Java 清理旧罐子时出现多个错误
我正在使用RAD/WAS8.5运行时开发J2EE应用程序。我正在清理这个非常旧的项目中的旧罐子,并引用新罐子。一切正常,但在清理工作区和重新启动服务器后,我开始出现这些错误Java 清理旧罐子时出现多个错误,java,struts,taglib,websphere-8,ibm-rad,Java,Struts,Taglib,Websphere 8,Ibm Rad,我正在使用RAD/WAS8.5运行时开发J2EE应用程序。我正在清理这个非常旧的项目中的旧罐子,并引用新罐子。一切正常,但在清理工作区和重新启动服务器后,我开始出现这些错误 com.ibm.ws.jsp.taglib.TldParser logParseErrorMessage未能分析标记库[/WEB-INF/commontags.tld]:/WEB-INF/commontags.tld com.ibm.ws.jsp.taglib.TldParser logParseErrorMessage未能
com.ibm.ws.jsp.taglib.TldParser logParseErrorMessage未能分析标记库[/WEB-INF/commontags.tld]:/WEB-INF/commontags.tld
com.ibm.ws.jsp.taglib.TldParser logParseErrorMessage未能分析标记库[/WEB-INF/displaytag.tld]:/WEB-INF/displaytag.tld
及
javax.servlet.UnavailableException:路径/WEB-INF/struts config.xml缺少配置资源
我只是无法确定丢失的jar是否有问题,或者我的工作区中存在冲突的jar。我没有更改任何*.xml文件或任何代码
任何关于调试这个问题的最佳方法的想法都是非常好的。谢谢
更新:
在web.xml中:
当您“清理”JAR时,您是否在
Java构建路径和部署程序集中设置了JAR?我发现有时我会改变前者,而忘记了这会清除后者。各位,我是这样做的
打开引起故障的文件,在本例中为commontags.tld
,displaytag.tld
和struts config.xml
,并进行假编辑,即添加/删除行
。瞧!所有的错误都神秘地消失了
闪回:当.war
文件没有显示在管理控制台上的WebSphere Enterprise Applications选项卡中时,我不得不假装编辑我的应用程序.xml
我假设由于某些原因,本地服务器中的
.ear
文件即使在重新部署后也没有更新。
最好有更好的解释!谢谢
PS:在部署web应用程序时,我仍然收到一个HTTP 404 Not Found
错误,但这个问题已经解决了。至于我的web项目,我只是在web-INF/lib文件夹中用新的JAR替换了旧的JAR,并设置了其他JAR,以便通过我们的常春藤存储库获取。请检查部署程序集设置。即使在WEB-INF/lib中替换JAR也可能会改变这一点。另外,您是否有IvyEclipse插件,以便可以将IvyJAR添加到部署程序集路径中?我已经做了。添加了快照。可能是因为我引用了EAR项目中的一些常见罐子吗?嗯,老鼠。我希望它就是这么简单的“明白了”,但看起来您已经涵盖了所有这些项目。那么您的struts-config.xml是否引用了那些tld文件呢?它们是否在web.xml中引用?哪些罐子被更换了?其中,Struts JAR被替换了吗?从哪个版本到哪个版本?我正在引用web.xml中的tld文件。我更换了大约30个罐子。我已经将Struts从1.1迁移到1.3。我添加了一些JAR的快照,如果存在的话,我不确定它们的新版本;至少不在我们的常春藤存储库中。好吧,听起来很可能是Eclipse/RAD错误。我会说,我想我在我最新版本的RAD中看到了一些类似的东西。我打算建议从服务器上删除应用程序,重新启动服务器,然后在没有其他选项时重新添加应用程序。
<servlet>
<description></description>
<display-name></display-name>
<servlet-name>action</servlet-name>
<servlet-class>org.apache.struts.action.ActionServlet</servlet-class>
<init-param>
<param-name>config</param-name>
<param-value>/WEB-INF/struts-config.xml</param-value>
</init-param>
<load-on-startup>2</load-on-startup>
</servlet>
.
.
.
<jsp-config>
<taglib>
<taglib-uri>commontags</taglib-uri>
<taglib-location>/WEB-INF/commontags.tld</taglib-location>
</taglib>
<taglib>
<taglib-uri>http://displaytag.sourceforge.net/</taglib-uri>
<taglib-location>/WEB-INF/displaytag.tld</taglib-location>
</taglib>
</jsp-config>
com.ibm.ws.webcontainer.webapp.WebGroupImpl WebGroup SRVE0169I: Loading Web Module: MyWebProject.
WASSessionCor I SessionContextRegistry getSessionContext SESN0176I: Will create a new session context for application key default_host/testhost
jsp E com.ibm.ws.jsp.taglib.TldParser logParseErrorMessage Failed to parse Tag Library [/WEB-INF/commontags.tld]: /WEB-INF/commontags.tld
jsp E com.ibm.ws.jsp.taglib.TldParser logParseErrorMessage Failed to parse Tag Library [/WEB-INF/displaytag.tld]: /WEB-INF/displaytag.tld
FfdcProvider W com.ibm.ws.ffdc.impl.FfdcProvider logIncident FFDC1003I: FFDC Incident emitted on C:\IBM\WebSphere85\AppServer\profiles\testwas85\logs\ffdc\server1_d215675c_13.12.03_16.15.45.2503351670868379650030.txt com.ibm.ws.webcontainer.servlet.ServletWrapperImpl 272
ActionServlet I org.apache.struts.action.ActionServlet initChain Loading chain catalog from wsjar:file:/C:/IBM/WebSphere85/AppServer/profiles/testwas85/installedApps/HJKGFL4Node05Cell/MyEARProject.ear/MyWebProject.war/WEB-INF/lib/struts-core-1.3.10.jar!/org/apache/struts/chain/chain-config.xml
PropertyMessa W org.apache.struts.util.PropertyMessageResources loadLocale Resource org/apache/struts/action/ActionResources_en_US.properties Not Found.
PropertyMessa W org.apache.struts.util.PropertyMessageResources loadLocale Resource org/apache/struts/action/ActionResources_en.properties Not Found.
ActionServlet E org.apache.struts.action.ActionServlet splitAndResolvePaths Missing configuration resource for path /WEB-INF/struts-config.xml
webapp E com.ibm.ws.webcontainer.webapp.WebApp commonInitializationFinally SRVE0266E: Error occured while initializing servlets: {0}
javax.servlet.UnavailableException: Missing configuration resource for path /WEB-INF/struts-config.xml
at org.apache.struts.action.ActionServlet.splitAndResolvePaths(ActionServlet.java:1872)
at org.apache.struts.action.ActionServlet.initModuleConfig(ActionServlet.java:683)
at org.apache.struts.action.ActionServlet.init(ActionServlet.java:356)
at javax.servlet.GenericServlet.init(GenericServlet.java:161)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.init(ServletWrapper.java:337)
at com.ibm.ws.webcontainer.servlet.ServletWrapperImpl.init(ServletWrapperImpl.java:168)
at com.ibm.ws.webcontainer.servlet.ServletWrapper.loadOnStartupCheck(ServletWrapper.java:1360)
at com.ibm.ws.webcontainer.webapp.WebApp.doLoadOnStartupActions(WebApp.java:606)
at com.ibm.ws.webcontainer.webapp.WebApp.commonInitializationFinally(WebApp.java:576)
at com.ibm.ws.webcontainer.webapp.WebAppImpl.initialize(WebAppImpl.java:425)
at com.ibm.ws.webcontainer.webapp.WebGroupImpl.addWebApplication(WebGroupImpl.java:88)
at com.ibm.ws.webcontainer.VirtualHostImpl.addWebApplication(VirtualHostImpl.java:169)
at com.ibm.ws.webcontainer.WSWebContainer.addWebApp(WSWebContainer.java:749)
at com.ibm.ws.webcontainer.WSWebContainer.addWebApplication(WSWebContainer.java:634)
at com.ibm.ws.webcontainer.component.WebContainerImpl.install(WebContainerImpl.java:426)
at com.ibm.ws.webcontainer.component.WebContainerImpl.start(WebContainerImpl.java:718)
at com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:1173)
at com.ibm.ws.runtime.component.DeployedApplicationImpl.fireDeployedObjectStart(DeployedApplicationImpl.java:1370)
at com.ibm.ws.runtime.component.DeployedModuleImpl.start(DeployedModuleImpl.java:639)
at com.ibm.ws.runtime.component.DeployedApplicationImpl.start(DeployedApplicationImpl.java:968)
at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:772)
at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplicationDynamically(ApplicationMgrImpl.java:1367)
at com.ibm.ws.runtime.component.ApplicationMgrImpl.start(ApplicationMgrImpl.java:2172)
at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.start(CompositionUnitMgrImpl.java:445)
at com.ibm.ws.runtime.component.CompositionUnitImpl.start(CompositionUnitImpl.java:123)
at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.start(CompositionUnitMgrImpl.java:388)
at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.access$500(CompositionUnitMgrImpl.java:116)
at com.ibm.ws.runtime.component.CompositionUnitMgrImpl$1.run(CompositionUnitMgrImpl.java:663)
at com.ibm.ws.security.auth.ContextManagerImpl.runAs(ContextManagerImpl.java:5459)
at com.ibm.ws.security.auth.ContextManagerImpl.runAsSystem(ContextManagerImpl.java:5585)
at com.ibm.ws.security.core.SecurityContext.runAsSystem(SecurityContext.java:255)
at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.startCompositionUnit(CompositionUnitMgrImpl.java:677)
at com.ibm.ws.runtime.component.CompositionUnitMgrImpl.startCompositionUnit(CompositionUnitMgrImpl.java:621)
at com.ibm.ws.runtime.component.ApplicationMgrImpl.startApplication(ApplicationMgrImpl.java:1259)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:88)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55)
at java.lang.reflect.Method.invoke(Method.java:613)
at sun.reflect.misc.Trampoline.invoke(MethodUtil.java:68)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:88)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55)
at java.lang.reflect.Method.invoke(Method.java:613)
at sun.reflect.misc.MethodUtil.invoke(MethodUtil.java:287)
at javax.management.modelmbean.RequiredModelMBean$4.run(RequiredModelMBean.java:1256)
at java.security.AccessController.doPrivileged(AccessController.java:252)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
at javax.management.modelmbean.RequiredModelMBean.invokeMethod(RequiredModelMBean.java:1250)
at javax.management.modelmbean.RequiredModelMBean.invoke(RequiredModelMBean.java:1088)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:831)
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:804)
at com.ibm.ws.management.AdminServiceImpl$1.run(AdminServiceImpl.java:1335)
at com.ibm.ws.security.util.AccessController.doPrivileged(AccessController.java:118)
at com.ibm.ws.management.AdminServiceImpl.invoke(AdminServiceImpl.java:1228)
at com.ibm.ws.management.application.sync.StartDeploymentTask.startDeployment(StartDeploymentTask.java:247)
at com.ibm.ws.management.application.sync.StartDeploymentTask.fullAppUpdate(StartDeploymentTask.java:119)
at com.ibm.ws.management.application.sync.StartDeploymentTask.performTask(StartDeploymentTask.java:107)
at com.ibm.ws.management.application.sync.AppBinaryProcessor$ExpandApp.expand(AppBinaryProcessor.java:1709)
at com.ibm.ws.management.application.sync.AppBinaryProcessor.postProcessSynchronousExt(AppBinaryProcessor.java:749)
at com.ibm.ws.management.bla.sync.BLABinaryProcessor.postProcess(BLABinaryProcessor.java:590)
at com.ibm.ws.management.bla.sync.BLABinaryProcessor.onChangeCompletion(BLABinaryProcessor.java:467)
at com.ibm.ws.management.bla.sync.BinaryProcessorWrapper.onChangeCompletion(BinaryProcessorWrapper.java:109)
at com.ibm.ws.management.repository.FileRepository.postNotify(FileRepository.java:1924)
at com.ibm.ws.management.repository.FileRepository.update(FileRepository.java:1433)
at com.ibm.ws.management.repository.client.LocalConfigRepositoryClient.update(LocalConfigRepositoryClient.java:189)
at com.ibm.ws.sm.workspace.impl.WorkSpaceMasterRepositoryAdapter.update(WorkSpaceMasterRepositoryAdapter.java:665)
at com.ibm.ws.sm.workspace.impl.RepositoryContextImpl.update(RepositoryContextImpl.java:1998)
at com.ibm.ws.sm.workspace.impl.RepositoryContextImpl.synch(RepositoryContextImpl.java:1946)
at com.ibm.ws.sm.workspace.impl.WorkSpaceImpl.synch(WorkSpaceImpl.java:549)
at com.ibm.ws.management.configservice.ConfigServiceImpl.save(ConfigServiceImpl.java:719)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:88)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55)
at java.lang.reflect.Method.invoke(Method.java:613)
at sun.reflect.misc.Trampoline.invoke(MethodUtil.java:68)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:88)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55)
at java.lang.reflect.Method.invoke(Method.java:613)
at sun.reflect.misc.MethodUtil.invoke(MethodUtil.java:287)
at javax.management.modelmbean.RequiredModelMBean$4.run(RequiredModelMBean.java:1256)
at java.security.AccessController.doPrivileged(AccessController.java:252)
at java.security.ProtectionDomain$1.doIntersectionPrivilege(ProtectionDomain.java:87)
at javax.management.modelmbean.RequiredModelMBean.invokeMethod(RequiredModelMBean.java:1250)
at javax.management.modelmbean.RequiredModelMBean.invoke(RequiredModelMBean.java:1088)
at com.sun.jmx.interceptor.DefaultMBeanServerInterceptor.invoke(DefaultMBeanServerInterceptor.java:831)
at com.sun.jmx.mbeanserver.JmxMBeanServer.invoke(JmxMBeanServer.java:804)
at com.ibm.ws.management.AdminServiceImpl$1.run(AdminServiceImpl.java:1335)
at com.ibm.ws.security.util.AccessController.doPrivileged(AccessController.java:118)
at com.ibm.ws.management.AdminServiceImpl.invoke(AdminServiceImpl.java:1228)
at com.ibm.ws.management.connector.AdminServiceDelegator.invoke(AdminServiceDelegator.java:181)
at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:88)
at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:55)
at java.lang.reflect.Method.invoke(Method.java:613)
at com.ibm.ws.management.connector.soap.SOAPConnector.invoke(SOAPConnector.java:478)
at com.ibm.ws.management.connector.soap.SOAPConnector.service(SOAPConnector.java:312)
at com.ibm.ws.management.connector.soap.SOAPConnection.handleRequest(SOAPConnection.java:65)
at com.ibm.ws.http.HttpConnection.readAndHandleRequest(HttpConnection.java:733)
at com.ibm.ws.http.HttpConnection.run(HttpConnection.java:532)
at com.ibm.ws.util.ThreadPool$Worker.run(ThreadPool.java:1815)