特定の ORM cfclocation が正しくマップされていないという問題があります。Coldfusion は、私が提供した cfclocation をチェックインし、マッピングを別の場所にキャッシュするため、エンティティを読み込もうとすると、cfc が見つかりません (間違ったフォルダーを探します)。
これは、私の cfclocations の 1 つでのみ発生しています。同じアプリケーションを cf10 サーバーで試してみましたが、動作しましたが、別の cf9 サーバーでは動作しませんでした。
そのため、どういうわけか、cfc がどこにあるかについて混乱し、別の場所が生成されます。
私が疑問に思っているのは、コールドフュージョンが場所をキャッシュするために行っているプロセスをデバッグするにはどうすればよいですか? adobes doc ページで orm のアーキテクチャの概要を読んだところ、coldfusion が .hbmxml ファイルを生成することが言及されていました。これらはどこにありますか? なぜcoldfusionがファイルが別の場所にあると考えるのかを理解できる別の方法はありますか.
(これに似た別の質問がありましたが、前の質問は修正を求めていたため、これを投稿するために削除しました。これはデバッグ方法を尋ねています)
アップデート:
saveMapping をオンにして、現在 hbmxml ファイルを取得しています。クラス名が正しく生成されていないことがわかります。これを手動で設定する方法はありますか?場所をマッピングするものをcoldfusionに手動で伝える方法はありますか. Coldfusion がその場所を別の場所にマッピングしている理由がわかりません。
以下の質問への回答
エンティティ名、名前、ファイル名はすべて同じです。
このファイルは、動作しているすべてのアプリケーションで同じ命名規則を使用する領域にあります。inetpub/resources/applications/[アプリケーション名]/cfcs/orm にあります。
cfclocation に送信されたアドレスの配列をダンプできますが、それは明らかにそこにあります。そうしないと、そもそもファイルが検出されません。ColdFusion と webroot は別の領域にありますが、前述のように、これは他のすべてのアプリで問題なく機能します。
さまざまなことをテストしながら、アプリケーションと ColdFusion サービスを繰り返し再起動しました。
hbmxml ファイルが指定するフォルダーは存在しません。
コールドフュージョンを再起動しても効果はありません。特定のフォルダーの近くに追加のマッピングを追加してからマッピングを削除することでいじり回した後、最終的にローカルサイトで一時的にアプリが動作するようになりました。しかし、別のサーバーに移動するとすぐに機能しなくなりました。99%の確率で動かないらしい