WEB开发网
开发学院操作系统Linux/Unix 如何解决Websphere中wsjar的问题 阅读

如何解决Websphere中wsjar的问题

 2010-09-27 08:17:32 来源:WEB开发网   
核心提示: 将该代码片断放在websphere某个应用的某个jsp文件中,执行该页面时就会报如下的错误:[06-4-18 14:31:03:500 CST] 73068638 Digester E org.apache.commons.digester.Digester Begin event threw

将该代码片断放在websphere某个应用的某个jsp文件中,执行该页面时就会报如下的错误:

[06-4-18 14:31:03:500 CST] 73068638 Digester E org.apache.commons.digester.Digester Begin event threw exception

[06-4-18 14:31:03:516 CST] 73068638 Digester E org.apache.commons.digester.Digester TRAS0014I: 下列异常已记录

org.apache.commons.configuration.ConfigurationException: java.lang.NullPointerException

at org.apache.commons.configuration.AbstractFileConfiguration.load(AbstractFileConfiguration.java:283)

我们在出错之前,如果将此时的url打印出来,结果URL是以wsjar:开头的一个形式。我们此时只需做如下简单的转换,就可以让代码正常工作:

URL url = PropertyGetter.class.getClassLoader().getResource("myconfig.xml");//你将myconfig.xml打在某个jar包中
//加入url转化代码
String urlStr=url.toString();
if(urlStr.startsWith("wsjar:"){
urlStr=urlString.substring(2);
url=new URL(urlStr);
}
//转转换结束
factory.setConfigurationURL(url); 

现在你应该明白了,为什么会在websphere中报wsjar有关的错误了吧。也许你会说,只要我们自己写代码时将wsjar的情况考虑进去不就可以避免了吗?是的,如果我们自己的应用考虑到了wsjar的情况,那么只能说我们自己的代码在websphere运行不会出现类似的问题,但是在许多情况下,我们所使用的开源技术的在很多情况下也会使用 XXXClass.class.getClassLoader().getResource("xxx.properties")的形式,那么如果他们自己没有考虑wsjar的情况,那么他们内部就会报出wsjar相关的错误,这样整个应用也往往因此而启动失败。

编缉推荐阅读以下文章

  • 使用 WebSphere Process Server 修复流程
  • 设置并置 WebSphere Application Server 负载均衡器和内容主机
  • 利用 WebSphere Application Server 6.1 构建 SIP 集群应用环境及其性能调优
  • WebSphere Process Server V6.0.2 集群,第 1 部分:了解拓扑
  • 如何实现WebSphere Application Server 6集群环境下的定时服务
  • 迁移集群环境中的 WebSphere Commerce
  • WebSphere Process Server V6.0.2 集群,第 2 部分:安装和配置 WebSphere Process Server 集群
  • Websphere MQ v6集群的负载均衡新功能
  • 将 JUnit 插件集成到 WebSphere Studio 中
  • 使用 IBM WebSphere MQ JMS 提供程序

上一页  1 2 3 4  下一页

Tags:如何 解决 Websphere

编辑录入:爽爽 [复制链接] [打 印]
赞助商链接