私は単純なエンタープライズアプリケーションをテストしていますが、リモートメソッドを呼び出すと次のエラーが発生します。org.omg.CORBA.MARSHAL:警告:00810057:クラスをロードできませんでした
タイプ例外レポート
messageInternalサーバーエラー
DESCRIPTIONTHEサーバは、この要求を満たすから それを防ぐ内部エラーが発生しました。
例外
org.apache.jasper.JasperExceptionが:にjavax.ejb.EJBException: java.rmi.MarshalException:CORBA MARSHAL 1330446393たぶん。ネストされた 例外はある:org.omg.CORBA.MARSHAL:WARNING:00810057:できませんでした 負荷クラスentitydata.Customerのvmcid:OMGマイナーコード:57完了: たぶん
根本原因
のjavax。 ejb.EJBException:java.rmi.MarshalException:CORBA MARSHAL 1330446393多分;ネストされた例外はある:org.omg.CORBA.MARSHAL: WARNING:00810057:クラスentitydata.Customerをロードできませんでしたがvmcid: OMGマイナーコード:57が完成:たぶん
根本原因
するjava.rmiを.MarshalException:CORBA MARSHAL 1330446393多分;ネストされた 例外はある:org.omg.CORBA.MARSHAL:WARNING:00810057:ない 負荷クラスentitydata.Customerはvmcidでした:OMGマイナーコード:完成57: たぶん
根本原因
組織を。 omg.CORBA.MARSHAL:WARNING:00810057:ロードできませんでしたクラス entitydata.Customerはvmcid:OMGマイナーコード:57完了:たぶん
SessionBeanの
public Object SearchData(Integer id) {
Customer cust = em.find(Customer.class, id);
return cust;
}
私は私のWARプロジェクトにEJBとremoteLibraryプロジェクトを追加した
Object o = ic.lookup(CustomerSessionBeansRemote.class.getName());
CustomerSessionBeansRemote custSession = (CustomerSessionBeansRemote) o;
Customer customer = (Customer)custSession.SearchData(1);
if(customer!=null){
out.print(customer.getName());
}
JSP
@Remote
public interface CustomerSessionBeansRemote {
Object SearchData(Integer id);
}
RemoteLibrary、そう、私のCustomerクラスに私のJSPのHASAアクセス。
任意のヘルプは、appriciatedされます。ありがとう。
ローカルとリモートの両方が、同じ「オブジェクト」を返すように設定されています。 –
@Developer "Customer"はSearchData()から "Object"として返されます。次に、 "Customer"としてcustSession.SearchData(1)をキャストします。特にIDLでは、どこにでも "Customer"オブジェクトを使用する必要があります。たとえば、次のようになります。 'public Customer SearchData(整数ID){return em.find(Customer.class、id); } ' あなたが世話する必要があるもう一つのものは例外です。 SearchData()が例外をスローできる場合、その例外をIDLにリストする必要があります。例外がリストされずにスローされた場合は、再度MARSHALLを取得します。 – BJovke