トップページ⇒php
868コメント367KB

WebObjects nsDictionary.valueForKey("5スレ");

■ このスレッドは過去ログ倉庫に格納されています
0001nobodyさん03/02/04 12:21ID:vwrTw9m5
NeXTからAppleComputerに引き継がれたオブジェクト指向
Webアプリ開発環境「WebObjects」について語るスレです。

http://www.apple.co.jp/webobjects/
http://www.apple.com/webobjects/

1スレ目:http://pc.2ch.net/test/read.cgi/php/989562708
2スレ目:http://pc.2ch.net/test/read.cgi/php/1013695600
3スレ目:http://pc.2ch.net/test/read.cgi/php/1024066714
4スレ目:http://pc2.2ch.net/test/read.cgi/php/1033912737

■ 掟 ■
・遠慮は自身の成長を阻害する。過去ログ読んでも判らないことがあればどんどん質問すべし。そして判らないヤツがいたら親切じゃなくてもいいから教えてやるべし。
・WebObjectsを使っている個人・法人の無意味な批判は歓迎されない、しない。マカーマカーと騒がないこと。
・ヨソの開発ツールを使ってもないのにWebObjectsマンセーすることは歓迎されない、しない。
・運用についての質問はハードウェア、OS、パッチ、RDBMSのバージョン、JDBCアダプタのバージョン、Web鯖のバージョン、例外の内容などを細かく明記すべし。
・プ社の話題はウザすぎるので全て専用クソスレでおながいします。

・さやかタン (´Д`;)ハァハァ
0002nobodyさん03/02/04 13:04ID:mfJE00kX
NSって大文字にしてほしかった
0003nobodyさん03/02/04 15:19ID:???
1〜3、HTML化済み
0004nobodyさん03/02/06 00:04ID:???
WebObjects 5.1でカスタムのサブコンポーネントから親のコンポーネント
に値を渡すにはどうしたらいいですか?
子の変数を親で処理したいんですが・・・
0005nobodyさん03/02/06 00:29ID:???
言葉の意味がわからん。
ウインドウの親子関係をいっている?Javaクラスの親子関係?
> カスタムのサブコンポーネントから親のコンポーネント
もっと具体的にやりたいことの記述を求む.
0006nobodyさん03/02/06 04:26ID:???
>>4
子コンポーネントでDynamicElement(WOTextFieldとか)に張り付けてる変数を
親コンポーネントで参照したいだけだったら、親コンポーネントのwodに
バインディング(*1)を追加するだけでよいかと思う。

例えば、子コンポーネントProfileEditComponentにWOTextFieldにバインドされた
telephoneという変数があって、そのTextFieldに入力された値を親のコンポーネント
MyProfileEditPageで参照したければ、

 親コンポーネント.wod:

 MyPorfile: ProfileEditComponent {
  telephone = myTelephone; // (*1) ProfileEditComponentのtelephoneをMyProfileEditPageのmyTelephoneにバインド
 }

 親コンポーネント.java:

  public String myTelephone; // MyProfileEditPageのインスタンス変数
 
  publicWOActionResults commitAction() {
  NSLog.debug.appendln("myTelephone = " + myTelephone); // myTelephone
  return null;
  }

アクションメソッドが呼ばれた時にはmyTelephoneに値が入っているのでそれを
参照することが出来る。

もうちょっと複雑なパターンだと、これでは不十分で、setValueForBinding()なんかを
使わないとダメかも知れません。例えば、子コンポーネントのアクションメソッド
で値を生成してからperformParentAction()で親コンポーネントに処理を移している場合
なんかは多分そうなります。
0007nobodyさん03/02/06 11:18ID:K/KxV3En
質問です。

だれかWin版のWO5.2でJikesでコンパイルする方法知りませんか?

C:\WinNT\System32にJikes.exeをコピーして、Jikesそのものは使えるように
なったみたいですが、コンパイラの一覧にJikesが出てきません。

また、Makefileのなかの「WINDOWS_JAVA_COMPILER」をいじってみましたが、
「Jikes.plistがないよー」とおこられました。(あたりまえか)

どのへんをいじればいいでしょうか?
0008703/02/06 11:29ID:K/KxV3En
Webをググッて見たら、tech-artsのMLにWin版のセットアップ方法が
出てました。(w

逝ってきます・・・・・。

(なんかうまくいって無さげだけど、多分大丈夫でしょう)
0009nobodyさん03/02/06 11:36ID:p+nEzdpl
>>5
わかりにくくてごめんなさい。
やりたいことは >>6 で書いてあるようなことでした。

>>6
ありがとうございます。これって、APIエディターで登録してWOビルダーで
バインドしてってやりかたですよね、昨日やったときはうまくできなかったような
気がしたんですけどさっきやってみたら子コンポーネントのフィールドの値を
親で処理できました。
ただ、アクションメソッドは親のものを使ってるんで
ご指摘の、子コンポーネントのアクションメソッドから親コンポーネントに
処理を移すというやり方は、これからもうちょっと勉強してみます。
0010703/02/06 15:21ID:K/KxV3En
7です。

やっぱ駄目でした。(w
まず、やったことから・・・

1)アポーのtech-infoの情報をもとにJikesSpec.plistとJikes.batを所定の場所に
  おこうとしたら、なんと、既にリンク先にファイルがない。

2)仕方ないので、MacOSX10.2から「Jikes.plist」をかっぱらってきて、適当
  に編集(Win版のJavacSpec.plistを見ながら、Executables,OperatingSystem,
  Arcitectureのパラメータを合わせた)Jikes.batはあきらめ。

3)Jikes.exeを%JDK%\binに移動。

4)JikesSpec.plistをC:AppleDeveloperMakefilesResourcesにコピー

5)ProjectBuilderを再起動。これで「Java Compiler」にJikesが出てくる
  とおもいきや、出てきません(泣。

6)しょうがないんで、とりあえずコンパイルの時間だけは知りたかったので
  MakefileのWINDOWS_JAVA_COMPILERの値をJikes.exeに変更。

7)ビルド実行。やっぱはえーェェ!!!!爆速じゃん!!!
  (VirtualPC上のWin2000で実行。コンパイルがいつ終わったか
  わからなかった。普通なら1プロジェクト30分はざら)

  ・・・・あ
  日本語が化けてる(w

てな感じです。
エンコードの部分がおかしいのは何となく分かるんですが、どの辺で指定すれば
いいのか皆目見当が付きません。
0011nobodyさん03/02/06 15:33ID:xlckppIQ
WebObjects 新規に始めようと思っとります。まずはイントラからだけど
将来は大規模サーバAP構築にも使えたらいいな。

WebObjects5.2 は運用環境として Win2k + IIS コネクタの環境で使うのは
安定してますか?
また、Windows Server 2003 RC2 + IIS6.0 で動かしてみた方いらっしゃいますか?
0012nobodyさん03/02/06 21:11ID:???
>>11
安定云々の前に、Windowsを鯖にしようとしていること自体が間違っていると思うのだが。政治的理由でWindowsしか使えないんだったら別だが。

で、本題のIISコネクタ環境の安定度は悪くない。ただし、IIS用アダプタを自前でコンパイル
する必要あるけど(あれ、バイナリもちゃんとあるようだけど。CGIアダプタはちょっとオススメできない。

Windows2003 RC2とIIS6.0の組み合わせはやったことない。つうかお前やってみて報告しる。
0013nobodyさん03/02/06 21:49ID:kXA9BnBi
>>12

11じゃないですけど、Windowsしかないっていうところはまだ沢山あります。
のこるソラリスはいまいち分からないし、Linuxは得体がしれないしって
いうところはいくつも見てる。こればっかりはどうしようもない。
(ちなみにMacOSXは論外ね。)

ただ、あながちWinも悪いと思わない。速度もまぁまぁだし、何もしらない
事務の人でもマニュアル作ればオペレーションぐらいはできる。

セキュリティホールだって不必要なサービスをとめて運用すればそれなりに
運用できます。FWたててポートしぼればなお安心。
(以外とやらないんだ、中小の鯖)

ただ、パッチ当てると動かなくなるツーのは勘弁して欲しいです。
(あと、気違いみたいな量のセキュリティ情報も)

>>11
Winの場合、他のOSとは違ったところに気をつけないといけないです。

ー続くー
00141303/02/06 21:58ID:kXA9BnBi
ー続きー

1)まず、ワトソン博士はとめて下さい。自動復帰が効かなくなります。
2)Monitorのスケジューリング機能で1日1回再起動するようにして下さい。
  (けっこうメモリー漏れるみたいです)
3)iisとWO鯖はできるだけ分けて下さい。
  (アプリによりますが、どちらもメモリーとCPU食います)

あと、このスレでも問題になったport1085占有問題って解決してない
ので(WOが使うPORT:1085を何かのアプリが押さえてしまう問題)
この辺も気をつけた方がいいかもしれません

・・・ってアドバイスになってない?
0015nobodyさん03/02/06 22:17ID:???
WebObjectsアプリの運用は、UNIX系OSがイイと思うのだが。
JDKが安定稼働するプラットフォームに限るな。漏れはSolaris、Linuxがおすすめ。
MacOS X Serverも論外とかいっちゃってるけど、使ってみればわかるよ。けっして悪くない。
0016ぷぷぷっ03/02/06 22:23ID:???
誰がやるのかのぉ。。。
ttp://jp.sun.com/developers/techdays/apple_track.html#t4
00171303/02/06 22:36ID:kXA9BnBi
>>15

自分個人としてはソラリスかMacOSXを推奨したいんですけど
(もち、自社のフォロー付き)、
やはり「Windowsがいい。簡単だもん。」っていわれてるとねぇ。

お客さまご指定じゃぁね。

まぁ、こちらは警告したんで責任は果たしましたけど。
(まさか、んな莫迦には売れませんとはいえないし)
0018nobodyさん03/02/07 00:41ID:???
11っす。

>>12-15 ありがとうございます。
やっぱ Windows はアレだよなぁ・・・ Solaris 使いたいんだけど、
「管理がわからん」とかいう理由で Win ご指定の納入先が結構多くて、
険しい路とは知っていてもあえて Windows での運用ノウハウは必要
なんですよねー。つーか Windows でやるならおとなしく .NET してろと
言いたいが。

Windows Server 2003 は RC2 を注文したので入れたらレポします。
00191703/02/07 15:29ID:Y4hH+BVZ
>>18

よろぴく〜。

そういえば、Win版をVPCで動かそうと四苦八苦していますが、(Jikesの件、
いまだわからず。とほほ)前スレでも問題になっていた”〜”入力不可の件は
WebObjectBuilderだけではなく、ProjectBuilderでもでちまうことが
分かりました。(入力してもエディター上に表示されない)

ちなみに、WOは5.2です。


ますますWin版を使う気なくしてきた。でも客先がなぁ・・・・。
0020nobodyさん03/02/08 16:57ID:ykF6rXPG
>>19
eclipse使え。
0021nobodyさん03/02/08 17:24ID:???
WebObjectsの中の人も大変ですね。
0022nobodyさん03/02/08 18:37ID:aflm/lKP
>>20

Eclipseだと、SubProjectを含んだビルドに失敗してしまいます。

ビルドだけProjectBuilderにまかせれば、という手も考えましたが、
EclipseとProjectBuilderをいっぺんに立ち上げると一気にマシンの
速度がぁ〜、てなわけで躊躇しています。

コード補完とか、すんごーく使いやすいんですがね。

WOのIDEがEclipseにならないかなぁ。
0023nobodyさん03/02/09 00:56ID:sqeM9sRq

Value for column '_rowid' is not unique.
というエラーが出て困っています。
原因がさっぱりわかりません!

何か心当たりのがあればお教えください。
00242303/02/09 01:11ID:sqeM9sRq
長くてすいません。よろしくお願いします。
Error: com.webobjects.eoaccess.EOGeneralAdaptorException: EvaluateExpression failed: :
Next exception:SQL State:42000 -- error code: 0 --
msg: ERROR - Value for column '_rowid' is not unique.
SQL: INSERT INTO ReserveHistory(Notes, IntStatus, LockFlag, StrReserveTerminalID,
IntReservedItemType, LeaseScanDate, IntPenaltyCode, LeaseDate, IntReservedItem,
LastUpdateTime, Str_id_Name, StatusChangeDate, IntReservedVolume, LastUpdater, _rowid,
IntLeasePeriod, IntLectureLeaseFlag, ReserveScanDate, ReturnScanDate) VALUES
('saved from WebObject', 0, NULL, NULL, 1, NULL, NULL, 65923200, 101, 66412228.012,
'1000001', NULL, 1, NULL, 5932, 1, 0, NULL, NULL)

00252303/02/09 01:13ID:sqeM9sRq
Reason: EvaluateExpression failed: <com.webobjects.jdbcadaptor.OpenBasePlugIn$OpenBaseExpression:
"INSERT INTO ReserveHistory(Notes, IntStatus, LockFlag, StrReserveTerminalID, IntReservedItemType, LeaseScanDate,
IntPenaltyCode, LeaseDate, IntReservedItem, LastUpdateTime, Str_id_Name, StatusChangeDate,
IntReservedVolume, LastUpdater, _rowid, IntLeasePeriod, IntLectureLeaseFlag, ReserveScanDate,
ReturnScanDate) VALUES (?, ?, NULL, NULL, ?, NULL, NULL, ?, ?, ?, ?, NULL, ?, NULL, ?, ?, ?,
NULL, NULL)" withBindings: 1:"saved from WebObject"(notes), 2:0(intstatus), 3:1(intreserveditemtype),
4:2003-02-03 09:00:00(leasedate), 5:101(intreserveditem), 6:2003-02-09 00:50:28(lastupdatetime), 7:"1000001"
(strIdName), 8:1(intreservedvolume), 9:5932(rowid), 10:1(intleaseperiod), 11:0(intlectureleaseflag)>: Next exception:
SQL State:42000 -- error code: 0 -- msg: ERROR - Value for column '_rowid' is not unique. SQL: INSERT INTO ReserveHistory
(Notes, IntStatus, LockFlag, StrReserveTerminalID, IntReservedItemType, LeaseScanDate, IntPenaltyCode, LeaseDate,
IntReservedItem, LastUpdateTime, Str_id_Name, StatusChangeDate, IntReservedVolume, LastUpdater, _rowid, IntLeasePeriod, IntLectureLeaseFlag, ReserveScanDate, ReturnScanDate)
VALUES ('saved from WebObject', 0, NULL, NULL, 1, NULL, NULL, 65923200, 101, 66412228.012, '1000001', NULL, 1, NULL, 5932, 1, 0, NULL, NULL)
00262303/02/09 01:57ID:sqeM9sRq

これが動かないと家に帰れません。
もう1週間缶詰です。
どなたかお助け下さい。
0027nobodyさん03/02/09 03:58ID:HGNZuruT
>>23
OpenBaseもWOも知らんが、_rowidというフィールドに挿入しようとした
5932という値が既に存在するから、ユニーク制約に引っかかってinsert
できないということじゃないか?
00282303/02/09 05:00ID:sqeM9sRq
>>27
エラーの意味はわかるんです。
でも_rowidはOpenBaseが勝手に振る連番なはずなんですよ。
なんでWOがあんなSQLを吐くのやら・・・。
■ このスレッドは過去ログ倉庫に格納されています