2009-09-16 119 views
1

我在這裏使用EJB3時出現了一個奇怪的問題。部署和EJB3,並試圖從部署的實例訪問業務方法。 當執行查找我得到以下錯誤:訪問EJB3時JBoss Class拋出異常

  • UserAuthenticationRemote是遠程I /面部
  • UserAuthenticationBean是豆

代碼(失敗):

UserAuthenticationRemote remoteInterface = (UserAuthenticationRemote) context.lookup("UserAuthenticationBean/remote"); 

錯誤日誌:

java.lang.ClassCastException: javax.naming.Reference cannot be cast to eds.enhancedqc.authentication.UserAuthenticationRemote 
      at  eds.enhancedqc.client.application.LoginDialog$3.doInBackground(LoginDialog.java:220) 
      at org.jdesktop.swingworker.SwingWorker$1.call(Unknown Source) 

    Exception "java.lang.ClassNotFoundException: org.openide.loaders.DataObject"while constructing DataFlavor for: application/x-java-openide-dataobjectdnd; mask=1; class=org.openide.loaders.DataObject 
      at java.util.concurrent.FutureTask$Sync.innerRun(FutureTask.java:303) 
    Exception "java.lang.ClassNotFoundException: org.openide.loaders.DataObject"while constructing DataFlavor for: application/x-java-openide-dataobjectdnd; mask=1; class=org.openide.loaders.DataObject 
      at java.util.concurrent.FutureTask.run(FutureTask.java:138) 
      at org.jdesktop.swingworker.SwingWorker.run(Unknown Source) 
      at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) 
      at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) 
      at java.lang.Thread.run(Thread.java:619) 

請幫忙!

感謝, 山姆

+1

恕我直言,你應該花一些時間來寫好英文和格式化代碼,也許人們會看看。 PS:錯誤很奇怪,客戶端代碼看起來不錯,但是什麼是org.openide.loaders.DataObject,爲什麼這個類有java.lang.ClassNotFoundException? – 2009-09-17 01:20:21

+0

我想到了這個問題。該錯誤是由於使用JBoss 5.0.1 lib/jar文件,而我在5.1.0上。 我清理了項目依賴關係,它工作。 --- Abt英語不好,我寫得很匆忙,從來不打算麻煩任何讀者。畢竟,恕我直言,我們在這裏解決問題,而不是寫在皇后英語的散文:-) – 2009-09-22 21:41:27

回答

2

的問題是,只有jar文件。所以刪除你項目中的所有jar文件,並從jboss-6.0.0.Final \ client文件夾中取出jar文件,這是你運行的服務器,並將其作爲類路徑,然後它將運行良好

2

import jbossall-client。 jar,並從你的類路徑中刪除jboss-client.jar