ColdFusion
■ このスレッドは過去ログ倉庫に格納されています
コールドフュージョニスト(?)なみんなで、語り合うスレです。 MXとかになって仕様変えすぎ、、、4.5シリーズのままでいいのに
Flashとの連携がやりやすいっていっても所詮はFlash側の制御に
殆どまかせっきりだし、、、逆のほうがやりやすいのにな、、、 4でCFを初めて触ったとき、20世紀も終わろうとしている時代に、
関数も使えない言語を作ったAllaireの技術者の頭を疑った。
ついでに、カスタムタグのことを関数と呼んでた外注さんの頭も。
5で関数サポートを聞いて小躍りしたが、SQL実行もできないのを知って、
こんなのを関数と呼んで堂々と売り出したAllaireの厚顔さに驚いた。
4と5の間はずっと「頼むから使わないで欲しい」と上に訴え続けたが、
MXになって多少ましになってほっとした。
何よりServletを直で呼び出せるようになったので、
CFで込み入ったロジックを書かなくて済むようになったのがうれしい。 >>437
あんたにはCF向いてないよJSPあたりでしこしこロジック書いてなさい 新年なってからだれも書き込みしてねぇ・・・やっぱ人気ないんだな
Flashとの連携っていったってPHPあたりでも余裕でできる話しだもんな
まぁなんにせよ今年もよろしく 長文すみません。
>>439
>>437あたりが煽ってるので書き込みにくいのかも。
でも、言ってることも一理あるので、話題ふりついでに皆さんに質問です。
大規模アプリの開発になるとビジネスロジックとビューの分離が不可欠になってきますが、
CFで良い手法またはフレームワークはありますか?
ググってみてCFObjectとかFuseBoxとか見つけたのですが、
どちらもロジックはこのファイル名でこのディレクトリに置いて、
ビューからはCFINCLUDEで呼び出すというような方法で、
要するに開発者がきちんと命名してルールに従って書いてねって感じ。
それをCFINCLUDEするもんだから、
呼ばれた側と呼んだ側にはインターフェースの規約がなく、
開発者がロジックに必要な変数を理解してビューで準備しなければならない。
どう考えても、フレームワークが開発を楽にしてくれるのではなく、
開発者に負担を強いてるとしか考えられないのですが、いかがでしょうか?
特に、FuseBoxはMVCを意識して作られてるようですが、
JavaでMVCのアプリを開発するためのフレームワーク、Strutsに比べると、
画面の遷移やMVCの役割の分担など、
フレームワークでやるべき部分をほとんどやってないような気がするのですが。
皆さんはどのようにしてますか? マトモな職場でマトモな仕事してれば
こんなとこ見る必要ないわな まともな職場でまともな仕事ではCFなぞ使わないということでFA? FuseBoxはうざいルールを決めてるだけにしか見えないねぇw
あくまで開発側が意識する規定であって開発環境がそれをサポート
してくれるわけじゃないんでしょ?>>440
しかしなんでこんな過疎スレにまで頭の悪そうな糞あおりがあるのか・・・w >>443
レスサンクス。あれからいろいろ調べてたら、
見つけた日本語ドキュメントが古かったかダメだったみたいです。
www.fusebox.orgを見直してみたら、画面遷移は管理してくれるみたい。
インターフェースの問題は良く分からんですが、
まぁCFMXからは関数もクラスもサポートされたんで、それでやれるだろうし。
とは言うものの、それではまた開発者が意識するルールになってしまいますが・・・。
それにしても、本当情報が少ないですね・・・。
良く名前は聞くので、もっと広まってるのかと思ってましたが・・・。 >>440さんに同意です。
本当に情報が少ない。書籍も少ないし、ページも少ない。
英語で書いてあるのにはいろいろあるみたいですね
読めないけどw
coldfusionは今使っていますが、本当に生産性がいいか疑問です。
MVCモデルに当てはめることはできるのでしょうか?
もともとwebに特価した言語でタグがきなんで、
あまり向いてないのかなぁ・・
>>446
JAVAとかやっている人から見たらCFに限らずスクリプト系なんて全部ダメでしょ?
あとこれだけCFが日本で流行らないのは
・有料
・開発しても金にならない
・メーカーの圧力が弱い(謎)
・熟練の日本人プログラマーに言わせたら“子供の玩具”みたいな物は受けが悪い。
(というか根本的に日本人には向いていない)
ってとこかな
漏れはJavaやってるけど、スクリプト系がダメってよりCFがダメ。
何あの不思議すぎな構文。なんでHTMLとかXMLに合わせなかったんだろ。
って言うか、同じCFでもタグの書き方のルールに統一性が無さ杉。
んで、タグはどれも痒いところに手が届かない中途半端なものばかりだし。
CFMXになって、さらに中途半端にServletAPIから持ってきたであろう、
いい加減なエンコーディング指定関連のタグと関数が加わって、
Shift_JISのコンテンツを作るのですら大変なことになった。
もうやつらは何がしたいのかよう分からん。ってのも>>447に加えといて。 書式に統一性がないのには激しく同意
なれりゃいいんだろうけどどうにも感覚的に
しくじることが多いんだよね、俺へたれだから
Flashとの連携も当初思っていたようなものとは違って
手順がまどろっこしいしCFもうダメポ 鯖移転騒ぎでレスが消えてしまった・・・。あんまり覚えてないけど記憶を頼りに書き直し。
>>446
あれからCFプロジェクトではFusebox使ってますが、半分仕方なしって感じです。
結局お約束に頼ってしまうので、プロジェクトメンバーの意識が合わないと使えないです。
外注さん使うとなるとStrutsのActionを実装させるみたいに行かないのがつらい。
そもそもJSTLとかでもタグはビューを記述するための言語で、
本質的にロジックを書くのには向いてないと思います。
>>447
私もJavaやってますが、スクリプト系言語だからダメというのはないです。
メーカーの圧力についての詳細キボンヌ(笑)
>>448,449
書式の統一性は本当になんとかして欲しいですね。
XML準拠になってくれれば言うことないんですが。 >>450
うちに鯖がとぶ前のログあったからいちおうはっとくね
--------------------------------------------
450 名前:440 投稿日:04/03/25 14:53 ID:???
>>446
すみません。しばらく見てなかったのでレス気づきませんでした。ありがとうございます。
あれからFuseboxをやってるのですが、Struts+Velocityをやるようにはいきません。
どうしてもお約束になってしまうところがあって、
例えばCFである以上、ビューでDB更新を行ってしまうこともできてしまい、
その点表示しかできないという制限のあるVelocityのようにはいかず、
ある程度のCFのスキルとFuseboxの知識があって、
なおかつメンバーの意識があってないと難しいと思います。
Struts+Velocityの時は一部を外注に振って、
Actionを実装させたりVelocityマクロを書かせたりはできたのですが、
Fuseboxでは外注さんの方にもやる気と知識がないと難しそうです。
が、今のところは他に方法も無いので、これを使っているという状態です。
ちなみに、最近知ったのですが、CFでイベントモデルを使ったコーディングをする、
というフレームワークが海外で生まれる(た?)らしく、
これってJSFとかTapestryのようなものなのかと激しく期待しているところです。
もう少し調べてイケてそうだったら、実際にプロジェクトでも使ってみようかと思ってます。
ただでさえ少ないCFの情報交換の場なので、がんばって盛り上げていきましょう。 その2
--------------------------------------------
451 名前:440 投稿日:04/03/25 15:03 ID:???
>>447
メーカーの圧力って、日本の某総代理店のことですか?
以前、100%再現するCFのバッファオーバランのバグを指摘して、
致命的なので直してと連絡したところ、本社が直さないっていうから無理って返事でした。
かなり丁寧に再現手順と危険性まで連絡したのに、そりゃないだろってくらいあっさりでした。
>>448 >>449
書式の統一性の無さは自分もイヤです。(笑)
関数とかタグならまだしも、制御構文を毎回リファレンスを見なくてはならないので、
あれは本当にもう少し考えて欲しかったと思います。
>>450
前にソフトウェアハウスの営業の方と雑談している時に、JAVAについて
出た話なんだけど、JAVAについては業界には暗黙の了解があって、
できる限り開発にはJAVAを使うようにっていう圧力があるような事を話して
いて(その方曰く、あまり言ってはいけない事らしい・・・)、その時は
“へぇ〜そーなんだぁ・・・”って思ってたんだけど・・・。
言われてみればIT関連どれを見てもJAVAだらけだし・・・
やっぱり関係あるのかな?って思って書いてみたんだけど・・・
信憑性は?なので、ネタだと思って軽く流してください(笑)
ところでバグの話大変でしたね〜。
そのバグって今では改善されているんですか?
>>451
ありがとうございます。自分の記憶のダメさ加減を再確認しました(笑)
>>450
うーむ。圧力だけじゃJava離れするだけだろうし、
見返りになんか旨い話でもあるんでしょうか。興味津々。
うちにも圧力かけてよと言ってみるテスト。
ちなみに、バグの話は「直してよー」とか言ってるうちに、
世間ではCFMXになってしまって、CFMXでは再現しないし、
CF5以前を使うこともないだろうしで、どうでもよくなってしまいました。
このスレもあと少しで満3歳を迎えるというのに、まだ半分も消化してない。
もっと盛り上がらないかな・・・。(´・ω・`) うへ。レス番間違えました。後半は>>453です。吊ってきます。 Ben Forta著の公式本が出てたんだけど
6,000円って何なんだよ(笑)
いくらBen Forta著だからってちょっとボリ杉じゃないか?
これじゃー広まる訳がない。
フォームから送られてくる特定のキーワードからSQLクエリを生成しようと思い
<cfset aaa=Replace(form.hoge,"keyword","field1='hogehoge'")>
などとセットして検索を実行すると演算子がない、と怒られます
どうもシングルクォーテーションの変換がおかしいようなのですが
回避する方法ないですか??? >>457
<cfset aaa = #Replace(form.hoge,"keyword","field1='hogehoge'")#>
で行くんじゃないのかな サンプルアプリってlocalhostからしかアクセスできませんが
あれってどこでそのような制限を設定してあるのでしょうか? >>459
application.cfm にて設定してあります。
該当行を書き換えれば制限は無くなります。 >>458
レスありがとうございます、、、早速試してみたのですが
457で書いたエラーは出てこなくなったのですが、こんどは
エラー診断情報
ODBC Error Code = S1000 (General error)
ERROR: syntax error at or near "hogehoge" at character 46
(CFQUERY) の汎用識別子を持つ要素を処理中に、エラーが発生し、ドキュメント位置 (12:1) から (12:39) を占有しています。.
とエラーになってしまいます。ちなみにDBへの問い合わせ部分は
<cfquery name="test" datasource="testdb">
SELECT * FROM item_name WHERE 0=0 and #a#
;
</cfquery>
としており、変数aを加えない場合は全レコードがすべて表示されます。
環境は CF4.5 PostgreSQL CF鯖:Win2000Server です。。。 すみません、自己解決しました。。。
とりあえずPreserveSingleQuotes関数を使ったら
エラーは出ず、望みの検索結果を得ることができました、ありがとうございました DBの検索を行って複数ページに表示を分ける場合、
クエリの引継ぎはどのように処理したらよいのでしょうか?
複雑な検索条件の受け入れを前提としているので
URL変数として渡すには長大になりすぎることが予想され
難儀しております
ちなみに検索条件は下記のようなものです
最大200社程度のメーカーから任意の指定(5桁のコード)
30種類の商品形態から任意の指定(2桁のコード)
価格の上限下限指定
任意のキーワード
教科書的なDB検索のありかたとして100社を指定して・・・というのは
あまり褒められたものではないとは思いますが、なにぶん
利用者側はDBや検索について無知であるというのが
前提条件となっているためこのような無茶と思える指定も
受け入れなければなりません
上手い処理方法があればご教授ください >463
検索条件か検索結果のクエリか、どっちかを
セッション変数に入れたらどうですか? ColdFusionとFlashで色々試してるんだけど、すげーすげーコレスゲー
Flexの体験版も注文したから到着が楽しみです。 Flash自体を手足のように使えない性もあるけど
どうも作るのがめんどい>CF&Flash連携もの
常々Webアプリ用インターフェースに特化した
Flashのサブセット的なものが出てくれたら
楽チンだなぁと思っているんだけど・・・・・
ところでFlexって何?ちょいと調べてくるか・・・ ちょこっと調べてみたけどなんかCFとの違いがよくわからないよ>Flex
データベースにアクセスできないってだけ?CFとの差別化は??
MXMLがどうのこうのって言ってるけど別にCF−>Flex経由でわざわざ
動かす必要ないんじゃないの?教えてエロイ人 >>467
漏れもちょっと見ただけだけど、
FLEXは「純然たるコードからSWFを吐き出す」ものであって、
CFのとバッティングは関係ないんじゃないかな。
要はFlashの「デザイナー向けインターフェース」を毛嫌いするプログラマさん用w
なるほど・・・となると漏れが求めてる形に近い可能性もあるなぁ
なんにせよ英文をシコシコ脳内変換しながら読む気力もスキルも
足らないから早いとこ日本語の情報だしてくれ>真っ黒メデア 盛り上がんないねぇ・・・なんとか汁よマクロメデア
.NETに対応したら盛り上がるかな
あとやっぱイニシャルコストが高い Flash+Coldfusionでないと、高く売れない風習。うちは cfcookieで有効期限30「分」ってどうやって実現するんですか?
日付のFomatとか使ってもエラーが出るか間違った期日(日数と勘違いする?)で
望むとおりに動かないです CFのAdmin画面でクッキー変数の有効期限変えられないかな。
Session変数だったら出来たと思うんだけど。
あとはCFLOCKでこちょこちょいじっていた気がするけど。 アドミン画面は確認してみます、、、ただシステム側で一括して
期限を変更してしまって半永久的に食わせておいてよいものまで
コントロールできなくなってしまうと困るんですよね
ちなみにいろいろ試した結果 2004/08/02 14:00 と直接書き込んでやれば
一応ブラウザで表示されるクッキーのデータとしては有効期限を作れました
文字列を生成しろや、ってことなのかな・・・ウーム ColdFusion MX 6.1 Enterpriseを考えてます。
ColdFusionのアプリでServletって呼び出せますよね?
ってことはColdFusion上でただのServletアプリのみを実行できるのでしょうか?
今、WASで動いている物を WAS + CF上で動かせたらいいなって。
CFMLは使いたくないんですが、CFのRemotingを使用したいんです。
宜しくお願いします。
>>477
FlashRemoting MX のJAVA版を単体で買うってのは? >>478
FlashRemoting MXがサポートしてないプラットフォーム(AIX)なんですよ。
RemotingはPure Javaって書いてるくせにWinとLinuxとSoralisしかサポートしないんですよね。
どうゆう魂胆でしょう?
>>480
個人的には使ってみたいんですが、オープンソースだと
サポートが受けられないので納品物に組み込むのは抵抗があります。
入力フォームでダブルクォーテーション入りの文字列をhiddenをつかって送信したいのですが、ダブルクォーテーションまでの文字列しか送信できません。
【例】
<input type="hidden" name="aaa" value="あいう"えお">
「あいう」しか送信できない。
ColdFusionの関数を使ってこの対策をとることはできるのでしょうか。
(それとも、ColdFusion以前の問題でしょうか。)
解決方法をわかる方がおられましたらお教え下さい。
お願い申し上げます。 >482
問題というか""の間が取られてるだけですね。
Sessionを使って回避できるのではないでしょうか?
CF4.0を使用しています・・・。
ODBC経由でデータベースへアクセスする方法をとっているのですが、
ODBCINT.dllとODBCAD32.exe
のバージョンが違うというエラーメッセージが表示されました。
どうしたらよいのか、わかりません・゚・(ノД`)・゚・
>>487
ありがとうございます。
自己解決致しました。 最近は .NET指名の案件ばかりだ
だからBlackStoneが楽しみで楽しみで XMLを使って、社員名簿の登録が出来るプログラムを作りたいのだけど
上手い具合に出来ない…orz
配列の変数名に変数を使うことってできないの?
たとえば 月の数字を拾って日付ごとに配列要素にして何かを格納したい場合
<cfset month = #DateFormat(hizuke,"mm")#> //この時点でmonthは11
<cfset array_#month# = ArrayNew(1)>
<cfset array_#month#[1] = "hogehoge"> //array_11[1]はhogehoge
としたいのだけどエラーになっちゃう通常の変数だと
<cfset "array_#month#" = "hogehoge">
とすればよい様だけどインデックス番号を指定すると同じくエラーになる
何か回避する方法はないですか?
今、ちょうど仕事で使ってるんだけど、お気楽でいいね CFMAILタグの中で条件分岐とか使ったときの
改行をなくす方法なんか無いですか?
メールの一行目
<cfif a is "b">
条件分岐したメッセージを入力
したいと思います
<cfelse>
AがBじゃないときのメッセージは
こちらになります
</cfif>
メールの最終行です
とすると
−−−−−−−−−−−−−−−−−−−−
メールの一行目
条件分岐したメッセージを入力
したいと思います
メールの最終行です
−−−−−−−−−−−−−−−−−−−−
こんな風になってしまって使い物になりません >>497
cfmailタグの外で条件分岐を完了できませんか?
<cfif a is "b">
<cfset bodyPart = "条件分岐したメッセージを入力したいと思います">
<cfelse>
<cfset bodyPart = "AがBじゃないときのメッセージはこちらになります">
</cfif>
<cfmail>
#bodyPart#
</cfmail>
>>497
メールの一行目
<cfif a is "b">条件分岐したメッセージを入力
したいと思います<cfelse>AがBじゃないときのメッセージは
こちらになります</cfif>
メールの最終行です
↑で桶。
ただ>>498のやり方のほうがスマートとは思うが。 497です、変数に組み込んで旨くいきました、ありがとう メモ
Fedora3にBlackstone(Coldfusion7)をインスコした後は、
xorg-x11-deprecated-libsのインストール
#setenforce 0でSELinuxの設定変更
この2つの操作が必要。
やっと動いた。 BlackstoneのcfformはFlexみたいな感じにFlashフォームを吐ける。
くそ高い追加ソフトを買わなくてもPDF帳票やFlashPaper帳票を作れるようになってる。
制限はきつめだけど、csvじゃなく生のExcelレポートも。POI? turbolinux8 serverにcoldfusionMXをインストールしたいんだけど、
apacheaのバージョンに対応していないっていわれて
インストールができません。
でも、turbolinux8 serverにcoldfusionMXを入れることは可能らしいんだけど
その方法を知らないでしょうか?
現在apache1.3.26 rpmバージョンを使用していますが、
apachea2.Xをインストールしないで
coldfusionMXをインストールしたいです。 CFでIISのログを解析して特定情報だけをDBに書き写し、
その結果を表示するようにしたいんだけどログファイルの読み込みって
一括でしかできないんですかね?
膨大な量なんで一行ずつ読み込んで生きたいんですけど・・・ >>505
CFでやるよりMSのLogParser 2.2を定期的に実行した方が簡単だったりして。
欲しい情報だけをクエリすればいいと思う。
質問の答えになってないんだけども。 アメリカのマクロメディアストアで買ったら$6,000くらいなのに日本で買うとくそ高い。
なんとかしる! CFAdminのメニューとかはインスコしたOSのロケールに合わせてくれるんじゃないのたぶん。
あとUnicodeだし。 CFMX7英語版トライアルで確認した範囲では、
日本語の取り扱いOK。
管理メニューその他も日本語。
当たり前だけどPDFマニュアル等は英語。
マニュアルは、これから出るであろう日本語版のLiveDocsやPDFを使えばいいやね。
安い海外製品版を買おうかしら。 まて英語トライアルも付属のオンラインマニュアルは日本語だった。 CFMX7だけど、どうもFlash Remotingにバグがあるっぽい。
J2EEのセッションをオフにしててもjsessionidでエラーが出るんだよね。
これと同じ。
http://www.macromedia.com/cfusion/webforums/forum/messageview.cfm?catid=138&threadid=961362
あとはReportBuilderの日本語版の完成度次第で購入の可否を決めようと思う。
英語版でもインスコするとUIは日本語表示になるけど、DBの日本語オブジェクトが文字化けしたりでグダグダ。 漏れのような温いCF使いはいま少し待てってことだな い、インスコできる環境がねぇ・・・・一台したてるか・・・ なんかいっつも文字が小さいんだけど、これどうにかならんの?>LiveDoc MX7だけど、なんかこう・・・バグが多いよな。
セッション周りとか。回避できるものばかりだけど。 未だに Report Builder で日本語が通らん。UIは日本語なのに。
http://www.macromedia.com/support/email/wishform/main.cgi?lang=Japanese
ここから要望は出したけど、早く直してくれないと評価にならねえええ。 >531関連のニュース
AdobeがMacromediaを34億ドルで買収
http://www.itmedia.co.jp/news/articles/0504/18/news034.html
これでCFはAllaire→Macromedia→Adobeと買収されていったわけだ。
てか、いきなりなくなったりしないよね?? 保守age
ついでに質問、MX7だとFlashPaperとかで印刷関係がずいぶん楽になってるみたいだけど
一々ブラウザで表示してからじゃなくて直接プリンタに投げることはできないの?
小型の入力端末(PDA)なんかを使わせて業務処理させようと思うんだけど
それだと逐一印刷内容を表示してから「印刷」ボタンを押すのはあまりやりたくないです ttp://p170.net220148013.tnc.ne.jp/
っうぇwwwwwwwwwwwwwwwうはっうぇwwwwww
おkおkおkwwwwwwっっうぇwおkwwwwwwwwwwww
wwwwwwwwwwwwwwww
wwwwwwwっwwwwwwwwwwwwwww
wwwwww >>534
クライアントのプリンタにサーバサイドで直接印刷命令を出せたら
CFに限らず大変なことになるんじゃね?
JAVAで作ったCFXで印刷処理をしたり、.NETで作った印刷処理用の
XML Webサービスを呼び出したりすればLAN内の印刷は実現できる
かもしれない。 ■ このスレッドは過去ログ倉庫に格納されています