ColdFusion 9 インスタンスと .NET DLL があります。.NET DLL は非常に単純な文字列解析で、CF でのタスクの一部を簡単にします。文字列を使用してクライアント固有のタスクを実行するクライアントごとに 1 つの DLL がありますが、元のソースからそれらの項目をプルするコアは、クライアントごとに変わりません。
この場合、次のようなオブジェクトがあります。
public class clsNotification : BaseClass
{
public string GetSimpleString()
{
return "I was here";
}
public string GetNotificationsXml(int ProjectID)
{
return MybaseClass.getXML(ProjectID);
}
}
通知クラスはメイン DLL であり、BaseClass は別の DLL にあります。
更新: テスト目的ですべてを 1 つの DLL に入れましたが、それでも同じエラーが発生します。私が受け取っているエラーは次のとおりです。
coldfusion.xml.rpc.CFCInvocationException: [java.lang.NoClassDefFoundError :
System/Xml/XmlQualifiedName][java.lang.ClassNotFoundException :
System.Xml.XmlQualifiedName]
残念ながら、logs フォルダーにアクセスできません。彼らはそれをセキュリティリスクか何かと考えていると思います。System.Xml.dll をフォルダーに入れましたが、まだ .NET Integration Service によって取得されていないようです。
何か新しい考えはありますか?XmlQualifiedName が見つからないのはなぜですか?
更新 2: ColdFusion コードは非常に単純です。ここで説明する関数を持つ cfcomponent です。
<cffunction name="GetNotificationsXml" access="remote" returntype="string" output="false">
<cfargument name="ProjectID" type="numeric" required="yes">
<cfobject name="myObj" type=".NET"
assembly="#ExpandPath("./")#Published .NET DLLs/Notifications.dll"
class="#Namespace#.clsNotifications">
<cfset str=myObj.GetNotificationsXml(ProjectID) />
<cfreturn str>
</cffunction>