明月松間照 清泉石上流


                                                  ——— 兵臨城下   貓科動物
          posts - 70, comments - 137, trackbacks - 0, articles - 23
            BlogJava :: 首頁 :: 新隨筆 :: 聯系 :: 聚合  :: 管理

          Eclipse 中CMP的部署發布問題

          Posted on 2006-04-27 17:28 兵臨城下 閱讀(1059) 評論(2)  編輯  收藏 所屬分類: Java EE

          我創建了一個簡單的CMP,是基于數據庫中的一個表的。
          創建過程和部署過程都很正常,但我在向應用服務器(WebSphere)發布時卻出現以下報錯:

          [06-4-27 11:59:52:531 CST] 3e725b31 Helpers?????? W NMSV0605W: 使用名稱“

          comp/PM/WebSphereCMPConnectionFactory”從上下文“java:”中查找的引用對象發送到

          JNDI 命名管理器并且導致異常。引用數據如下:
          引用工廠類名:com.ibm.ws.naming.util.IndirectJndiLookupObjectFactory
          引用工廠類位置 URL:<null>
          Reference Class Name: java.lang.Object
          Type: JndiLookupInfo
          Content: JndiLookupInfo: jndiName="jdbc/Default"; providerURL="";

          initialContextFactory=""

          異常數據如下:
          javax.naming.NameNotFoundException: Context:

          localhost/nodes/localhost/servers/server1, name: jdbc/Default: First

          component in name Default not found.? Root exception is

          org.omg.CosNaming.NamingContextPackage.NotFound:

          IDL:omg.org/CosNaming/NamingContext/NotFound:1.0
          ?at

          com.ibm.ws.naming.ipcos.WsnOptimizedNamingImpl.do_resolve_complete_info(Ws

          nOptimizedNamingImpl.java:968)
          ?at

          com.ibm.ws.naming.cosbase.WsnOptimizedNamingImplBase.resolve_complete_info

          (WsnOptimizedNamingImplBase.java:1399)
          ?at

          com.ibm.WsnOptimizedNaming._NamingContextStub.resolve_complete_info(Unknow

          n Source)
          ?at

          com.ibm.ws.naming.jndicos.CNContextImpl.cosResolve(CNContextImpl.java:3491

          )
          ?at

          com.ibm.ws.naming.jndicos.CNContextImpl.doLookup(CNContextImpl.java:1519)
          ?at

          com.ibm.ws.naming.jndicos.CNContextImpl.doLookup(CNContextImpl.java:1480)
          ?at

          com.ibm.ws.naming.jndicos.CNContextImpl.lookupExt(CNContextImpl.java:1187)
          ?at

          com.ibm.ws.naming.util.IndirectJndiLookupObjectFactory$1.run(IndirectJndiL

          ookupObjectFactory.java:372)
          ?at

          com.ibm.ws.security.util.AccessController.doPrivileged(AccessController.ja

          va:111)
          ?at

          com.ibm.ws.naming.util.IndirectJndiLookupObjectFactory.getObjectInstanceEx

          t(IndirectJndiLookupObjectFactory.java:221)
          ?at

          com.ibm.ws.naming.util.Helpers.processSerializedObjectForLookupExt(Helpers

          .java:868)
          ?at

          com.ibm.ws.naming.urlbase.UrlContextHelper.processBoundObjectForLookup(Url

          ContextHelper.java:152)
          ?at

          com.ibm.ws.naming.java.javaURLContextRoot.processBoundObjectForLookup(java

          URLContextRoot.java:398)
          ?at

          com.ibm.ws.naming.urlbase.UrlContextImpl.lookup(UrlContextImpl.java:1278)
          ?at

          com.ibm.ws.naming.java.javaURLContextRoot.lookup(javaURLContextRoot.java:1

          96)
          ?at

          com.ibm.ws.naming.java.javaURLContextRoot.lookup(javaURLContextRoot.java:1

          37)
          ?at javax.naming.InitialContext.lookup(InitialContext.java:360)
          ?at

          com.ibm.ws.ejbpersistence.beanextensions.ConcreteBeanClassExtensionImpl.lo

          okup(Unknown Source)
          ?at

          com.ibm.ws.ejbpersistence.beanextensions.ConcreteBeanClassExtensionImpl.ge

          tConnectionFactory(Unknown Source)
          ?at

          com.ibm.ws.ejbpersistence.beanextensions.PMModuleCookieImpl.beanInstall(Un

          known Source)
          ?at

          com.ibm.ws.ejbpersistence.beanextensions.PersistenceManagerImpl.beanInstal

          l(Unknown Source)
          ?at

          com.ibm.ejs.container.EJSContainer.loadBeanMetaData(EJSContainer.java:1367

          )
          ?at

          com.ibm.ejs.container.EJSContainer.getHomeWrapperCommon(EJSContainer.java:

          1012)
          ?at

          com.ibm.ejs.container.EJSContainer.getHomeInstance(EJSContainer.java:934)
          ?at

          com.ibm.ejs.container.EJSContainer.startBean(EJSContainer.java:913)
          ?at

          com.ibm.ws.runtime.component.EJBContainerImpl.startBean(EJBContainerImpl.j

          ava:1301)
          ?at

          com.ibm.ws.runtime.component.EJBContainerImpl.install(EJBContainerImpl.jav

          a:1034)
          ?at

          com.ibm.ws.runtime.component.EJBContainerImpl.start(EJBContainerImpl.java:

          1508)
          ?at

          com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.j

          ava:505)
          ?at

          com.ibm.ws.runtime.component.DeployedApplicationImpl.fireDeployedObjectSta

          rt(DeployedApplicationImpl.java:808)
          ?at

          com.ibm.ws.runtime.component.DeployedModuleImpl.start(DeployedModuleImpl.j

          ava:354)
          ?at

          com.ibm.ws.runtime.component.DeployedApplicationImpl.start(DeployedApplica

          tionImpl.java:578)
          ?at

          com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(Applicati

          onMgrImpl.java:299)
          ?at

          com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.j

          ava:256)
          ?at

          com.ibm.ws.runtime.component.ContainerImpl.startComponents(ContainerImpl.j

          ava:536)
          ?at

          com.ibm.ws.runtime.component.ContainerImpl.start(ContainerImpl.java:413)
          ?at

          com.ibm.ws.runtime.component.ApplicationServerImpl.start(ApplicationServer

          Impl.java:128)
          ?at

          com.ibm.ws.runtime.component.ContainerImpl.startComponents(ContainerImpl.j

          ava:536)
          ?at

          com.ibm.ws.runtime.component.ContainerImpl.start(ContainerImpl.java:413)
          ?at

          com.ibm.ws.runtime.component.ServerImpl.start(ServerImpl.java:183)
          ?at com.ibm.ws.runtime.WsServer.start(WsServer.java:128)
          ?at com.ibm.ws.runtime.WsServer.main(WsServer.java:225)
          ?at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
          ?at

          sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:

          79)
          ?at

          sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorIm

          pl.java:41)
          ?at java.lang.reflect.Method.invoke(Method.java:386)
          ?at com.ibm.ws.bootstrap.WSLauncher.main(WSLauncher.java:105)
          ?at

          com.ibm.etools.websphere.tools.runner.api.ServerRunnerV5$1.run(ServerRunne

          rV5.java:97)

          從報錯信息中看出好像是CMP的連接初始化工廠配置有問題。由于我剛上手使用Eclipse +

          WebSphere(以前使用的是Jbuilder + Weblogic),但我有一個疑問:
          在部署成功后發布時怎么會出現初始化工廠的問題呢?我還沒有調用這個CMP啊?只是發布到

          WebSphere而已(相當于發布到Weblogic應用服務器),為什么會初始化環境工廠呢?以我的

          經驗只有在發布成功后,客戶端調用CMP時才會涉及到這個問題吧!
          我實在弄不明白。難道這兩個應用服務期在這一點上有區別?
          另外,如果發布時進行初始化環境工廠,那我創建的SessionBean為什么就沒有這個問題,部署

          發布都很正常,不知道為什么?

          問題困擾我很久了。期望解決方案!


          評論

          # re: Eclipse 中CMP的部署發布問題  回復  更多評論   

          2006-04-28 12:17 by 兵臨城下
          哈哈!苦苦奮斗了好久天,網上差了很多資料,終于解決了。
          原來是數據源的設置問題,沒有指定數據源的JNDI名。

          有一點需要說明的是:此處配置和Jbuilder不一樣。
          Jbuilder中,在進行數據庫映射后不需配置數據源,而Wsad中卻需單獨配置。
          也許是Jbuilder中,在映射時服務器自動配置了。
          這也是我復查了在wsad中創建CMP整個過程沒發現問題的原因,頭腦中以為配置的數據庫映射后,肯定進行了數據源的設置。所以我在wsad中就沒有這個概念了啊!深思一下:還是我以前使用Jbuilder時,沒有詳究他的自動配置啊!

          個人認為這點上wsad做的不如Jbuilder嗎!起碼對于我這種初級人物來說!呵呵!

          # re: Eclipse 中CMP的部署發布問題  回復  更多評論   

          2007-09-07 09:48 by 張宇
          我也遇到了這個問題,請問你是怎么解決的啊?
          主站蜘蛛池模板: 炉霍县| 云林县| 南华县| 泸定县| 清涧县| 闻喜县| 南城县| 南郑县| 洛川县| 沙坪坝区| 正宁县| 莱芜市| 原平市| 玛纳斯县| 威海市| 鹤岗市| 古浪县| 平阴县| 塘沽区| 巧家县| 临海市| 武安市| 从化市| 盖州市| 崇左市| 报价| 南平市| 天等县| 温宿县| 曲阳县| 莆田市| 韶关市| 双桥区| 沙坪坝区| 岐山县| 双牌县| 涪陵区| 灵璧县| 古田县| 军事| 黄龙县|