2012-04-12 11 views
0

私はいくつかの試行錯誤を繰り返しましたが、私はこの問題に対する解決策を考え出すことはありません。Coldfusion CFC他のフォルダを参照するCFCを使用した外部ディレクトリへのマッピング

私はこの(例)のようなフォルダ構造を持っている

  • Application.cfcの
  • オブジェクト
    • \ Object.cfc
  • ユーティリティ
    • Util.cfc \
  • API \
    • リソースindex.cfmに
      • \
    • Application.cfcの

私はAPIフォルダを指すつのサイトを持っています(http:/ /api.site.com)、全体ルート(http://site.com)を指す別のもの

Api \ Resource \ index.cfmから。私は、Object \ Object.cfc上でcreateObject()を実行しようとしています。私はCF管理者かAPI \ Application.cfcのthis.mappings ["/ SiteRoot"] = "C:\ wwwroot"でマッピングを設定しました。 index.cfmの内部では、createObject( "component"、 "SiteRoot.Objects.Object")を実行します。これはObject.cfcに正しくアクセスします。

問題は、Object.cfcがcreateObject( "component"、 "Utilities.Util")によってUtilities \ Util.cfcをインスタンス化するため、失敗するという問題です。エラーはUtilities.Utilが見つからないということです。

非常に最下位のルートには、明らかにObject.cfcを問題なく呼び出すことができる他のファイルがあります。これは、単にユーティリティフォルダに自然に入り込むためです。

私は実際にこのルートからAPIフォルダを完全に外す必要がありますか?

ありがとうございます!

UPDATE 私はまだ自分の質問に答えるせていないが、他の人が中に相づちを打った前に私はここに投稿したかった。

アプリケーションをreinitingし、アプリケーションサーバーを再起動するにもかかわらず、一度か二度、それはありませんでしたワーキング。それから突然、それは私が期待したように行って働いただけです。 Object.cfcはUtil.cfcを相対パスに基づいて正しく見つけることができます。

私は、彼らが完全に実行可能な選択肢と解決策であったために応答した人にアップホートを与え、そのうちの1人と一緒に行ったとしたら、これはただの作業を開始しただけではありませんでした。悪魔、私はあなたに言う。悪魔。

ありがとうございます!

答えて

1

私はcreateObject( "SiteRoot.Utilities.Util")に2番目のcreate object call(ユーティリティ1)を変更すると思いますか?いずれかのマッピングがどこにインスタンス化されても、すべてのオブジェクトの開始点を「制御」することを確認します。

1

実際にコードを変更できない場合は、「ユーティリティ」フォルダを指すユーティリティと呼ばれるColdFusionマッピングを作成してください。

関連する問題