0

初めてマッピングを使用しようとしていますが、いくつか問題があります。私のCFadminで、次のようなマッピングを作成しました。

論理パス:

/ email_sender

ディレクトリパス:

E:\ sites \ Example.Com \ cf_modules \ autoresponders \ Emails \ emailLists

.cfcからインクルードファイルにアクセスしようとしています。私のcfc内には、同じフォルダーにあるインクルードファイルがあり、正常に機能しますが、そのインクルードファイルは、通過する情報に基づいて別のインクルードファイルにアクセスしようとしています。

コンポーネント内のインクルードファイルには、このコードが含まれています。

<cfmail from="#emailData.sender#" to="#surveymain.email#" subject="#subject#"  type="HTML" >
    <cfinclude template="#emailData.includePath#" >
</cfmail>    

より明確にするために、これは私の全体的なファイルシステムです:

access.cfm-> some.cfc-> include_1(動作)-> include_2(パスの問題)

エラーをメールで送信するtry/catchがあり、include_1内にあります。

作成したマッピングを使用して、最終的にインクルードファイルにアクセスできるようにするにはどうすればよいですか?

emailLists動的フォルダを作成した後、電子メールを送信しようとしているクライアントに応じて変化することに注意してください。したがって、パスの最終結果は次のようになります。

E:\sites\Example.Com\cf_modules\autoresponders\Emails\emailLists\client_A\email_template.cfm

これを実行してマッピングを使用してみました <cfinclude template="/email_sender/#emailData.includePath#" >

これは私にこのエラーを与えました:

CFCへのパスは、マッピングを使用せずに、フルパスまたは現在のテンプレートからの相対パスとして指定する必要があります。

また、cfincludeにフルパスを含めようとしましたが、次のエラーも発生しました。

注:CFINCLUDEで絶対テンプレートパス(たとえば、> template = "/ mypath / index.cfm")を使用する場合は、ColdFusionAdministratorを使用してパスのマッピングを作成する必要があります。または、アプリケーションごとの設定を使用して、Application.cfcのTHIS.mappingsへのマッピング構造体を指定することにより、このアプリケーションに固有のマッピングを指定できます。
相対パス(たとえば、template="index.cfm"またはtemplate="../ index.cfm")を使用する場合、特別なマッピングを作成する必要はありません。したがって、可能な限りCFINCLUDEで相対パスを使用することをお勧めします。

どんな助け/提案も大歓迎です

編集:サーバーを再起動した後、機能したバージョンは次のとおりです。 <cfinclude template="/email_sender/#emailData.includePath#" >

返信してくれた人に感謝します。

4

2 に答える 2

3

いくつかの答えではなく、いくつかの質問。

  1. CFAdminまたはApplication.cfcでマッピングを設定しましたか?
  2. 以下のコードを実行すると何が得られますか?

    #expandPath( "/ email_sender")#

  3. の価値は#emailData.includePath#何ですか?

  4. これの価値は何ですか:#expandPath("/email_sender#emailData.includePath#")#
  5. エラーメッセージを漠然と説明するのではなく、正確なテキストを提供していただけませんか。
  6. の価値は#fileExists(expandPath("/email_sender#emailData.includePath#"))#何ですか?

あなたがその情報であなたの質問を更新することができれば、あなたはあなたが間違っているところを見つけるか、私たちは物語が何であるかを解明するのを手伝うことができます

于 2012-10-25T18:14:03.827 に答える
0

このようなことが以前に一度私に起こりました。基本的に、管理インターフェースを使用するのではなく、xmlファイルを編集しました。マッピングが行われなかった理由に気付くまで、システム管理者がサーバーを再起動するまではありませんでした。マッピングを追加してからサーバーを再起動しましたか?

于 2012-10-25T18:29:26.330 に答える