当前位置:软件学习 > 其它软件 >>

Webshpere 中部署Commonj Timer 失败!!!

我在webshpere上想用定时程序,在应用中采用了,Commonj Timer,在web.xml中描述资源如下:
<resource-ref>
<description>Timer for schedule tasks</description>
<res-ref-name>timer/ScheduledTask</res-ref-name>
<res-type>commonj.timer.TimerManager</res-type>
<res-auth>Container</res-auth>
<res-sharing-scope>Unshareable</res-sharing-scope>
</resource-ref>

在deploy应用时,资源影射如下:
映射资源引用到资源  
您的应用程序中定义的每个资源引用都必须映射到一个资源。  
commonj.timer.TimerManager         
选择  模块  EJB  URI  引用绑定  JNDI 名称  
wam  wam.war,WEB-INF/web.xml timer/ScheduledTask timer/ScheduledTask

但是运行代码时:
InitialContext ctx = new InitialContext();
TimerManager mgr = (TimerManager)ctx.lookup("java:comp/env/timer/ScheduledTask");
TimerListener listener =new ScheduledTaskListener ();
mgr.scheduleAtFixedRate(listener, 2*60*1000, 24*60*60*1000);
服务器报错:
[08-7-2 15:34:52:969 CST] 00000034 Helpers       W   NMSV0605W: 使用名称“comp/env/timer/ScheduledTask”从上下文“java:”中查找的引用对象被发送到 JNDI 命名管理器并且导致异常。引用数据如下:
引用工厂类名:com.ibm.ws.util.ResRefJndiLookupObjectFactory
引用工厂类位置 URL:<null>
Reference Class Name: java.lang.Object
Type: ResRefJndiLookupInfo
Content: com.ibm.ws.util.ResRefJndiLookupInfo@275c81e ResRefJndiLookupInfo: Look up Name="timer/ScheduledTask";JndiLookupInfo: jndiName="timer/ScheduledTask"; providerURL=""; initialContextFactory=""
异常数据如下:
javax.naming.NameNotFoundException: Context: cnwsp00503vNode01Cell/nodes/cnwsp00503vNode01/servers/server1, name: timer/ScheduledTask: First component in name timer/ScheduledTask 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.handleNameNotFound(WsnOptimizedNamingImpl.java:2000)
at com.ibm.ws.naming.ipcos.WsnOptimizedNamingImpl.getNextWsnOptimizedNamingContext(WsnOptimizedNamingImpl.java:1321)
at com.ibm.ws.naming.cosbase.WsnOptimizedNamingImplBase.getTargetContext(WsnOptimizedNamingImplBase.java:3024)
at com.ibm.ws.naming.cosbase.WsnOptimizedNamingImplBase$LeafOperationData.<init>(WsnOptimizedNamingImplBase.java:3489)
at com.ibm.ws.naming.cosbase.WsnOptimizedNamingImplBase.resolve_complete_info(WsnOptimizedNamingImplBase.java:1427)
........................

两个疑问:
1.Webshpere 下能用Commonj Timer否?网上大部分实例是在Weblogic中用的?
2.如果可以,到底哪里出了问题.
--------------------编程问答-------------------- 有人知道吗???
补充:企业软件 ,  WebSphere
CopyRight © 2022 站长资源库 编程知识问答 zzzyk.com All Rights Reserved
部分文章来自网络,