0 0

关于weblogic jar冲突5

我使用weblogic9.2,json包使用的是jackson,现在存在weblogic的包与jackson的包冲突,因为我把jackson包去掉了报java.langl.nosuchmethoderror报错,而不是noclassdefined所以应该确定是jar冲突了。不知道应该 去哪里找冲突jar包,具体是涉及到ObjectMapper类的一个方法无法找到。有谁有这方面的经验分享一下。谢了

问题补充:
hao117 写道
可以通过配置文件来修改加载顺序,使得lib目录中的类得到优先调用,在weblogic.xml中加入下面的代码段:  
  <container-descriptor>  
  <prefer-web-inf-classes>true</prefer-web-inf-classes>  
  </container-descriptor>  


加入这个也是一样的,而且我是9.2版本,我奇怪的是不加jackson这个包,报nosuchmethoderror,加了项目能起来,但是功能又报jackson的错误

问题补充:
hao117 写道
最好能把完整的异常也帖出来,jackson也用过,但我在weblogic10上是正常的

hao117 写道
最好能把完整的异常也帖出来,jackson也用过,但我在weblogic10上是正常的


就是这个错误,我上传附件了。而且好像不是jackson jar冲突,我之前没有吧weblogic中wl_user的包中jackson包删掉。全部删掉后,报noclassdefined错误了。我在项目中加上jackson包可以正常起来了,但是访问功能点时就报数据越界的错误。我在tomcat和was6,7测试都没问题的。
求解答
2012年3月17日 18:52
  • 大小: 189.5 KB

5个答案 按时间排序 按投票排序

0 0

我先在也遇到了这个问题,楼主解决了没?分享一下

2013年7月19日 11:29
0 0

  <container-descriptor>   
  <prefer-web-inf-classes>true</prefer-web-inf-classes>   
  </container-descriptor>   

你得确认这个配置是否生效,
如果不生效,可以看下weblogic对应版本的说明文档,看是到底要具体怎么配置才能优先使用工程内的jar包


同时你可以检测你的class文件使用的是哪个加载器
参考下面的代码


 Class  c = Class.forName("java.lang.Object");
ClassLoader cl= c.getClassLoader();
System.out.println("java.lang.Object's loader is " + cl);




/*LoaderSample1.java*/
public class LoaderSample1 {
     public static void main(String[] args) {
         Class c;
         ClassLoader cl;
         cl = ClassLoader.getSystemClassLoader();
         System.out.println(cl);
         while (cl != null) {
             cl = cl.getParent();
             System.out.println(cl);
         }
         try {
             c = Class.forName("java.lang.Object");
             cl = c.getClassLoader();
             System.out.println("java.lang.Object's loader is " + cl);
             c = Class.forName("LoaderSample1");
             cl = c.getClassLoader();
             System.out.println("LoaderSample1's loader is " + cl);
         } catch (Exception e) {
             e.printStackTrace();
         }
     }
}
在我的机器上(Sun Java 1.4.2)的运行结果
sun.misc.Launcher$AppClassLoader@1a0c10f
sun.misc.Launcher$ExtClassLoader@e2eec8
null 
java.lang.Object's loader is null
LoaderSample1's loader is sun.misc.Launcher$AppClassLoader@1a0c10f
第一行表示,系统类装载器实例化自类sun.misc.Launcher$AppClassLoader 
第二行表示,系统类装载器的parent实例化自类sun.misc.Launcher$ExtClassLoader 
第三行表示,系统类装载器parent的parent为bootstrap 
第四行表示,核心类java.lang.Object是由bootstrap装载的 
第五行表示,用户类LoaderSample1是由系统类装载器装载的 

2012年3月17日 23:22
0 0

最好能把完整的异常也帖出来,jackson也用过,但我在weblogic10上是正常的

2012年3月17日 20:02
0 0

可以通过配置文件来修改加载顺序,使得lib目录中的类得到优先调用,在weblogic.xml中加入下面的代码段:  
  <container-descriptor>  
  <prefer-web-inf-classes>true</prefer-web-inf-classes>  
  </container-descriptor>  

2012年3月17日 19:43
0 0

你可以试试这个网站:
http://www.findjar.com/index.x
找到类对应的jar。然后解决冲突的jar包,用合适版本的jar包。

2012年3月17日 19:23

相关推荐

    weblogic部署项目jar冲突解决

    标题"weblogic部署项目jar冲突解决"指出的核心问题是JAR包冲突。这是因为不同的应用服务器可能内置了不同版本的库,或者在类加载机制上有差异,导致原本在Tomcat上运行良好的应用在WebLogic上出现问题。以下是一些...

    Hibernate的Antlr在Weblogic中产生Jar冲突的解决办法

    ### Hibernate的Antlr在Weblogic中产生Jar冲突的解决办法 #### 背景与问题描述 在使用Hibernate框架进行Java应用开发时,特别是在Weblogic服务器环境下部署应用程序时,可能会遇到一个常见问题:由于不同版本的...

    将应用部署在weblogic中于axis2冲突的问题及解决方案

    将应用部署在Weblogic Server 10.3中与Axis2冲突的问题可以通过删除项目WEB-INF\lib目录下的wstx-asl-3.2.4.jar包来解决。同时,也可以通过在WEB-INF\lib目录下配置weblogic.xml文件来解决包冲突的问题。

    关于weblogic部署Java项目的包冲突问题的解决

    "关于weblogic部署Java项目的包冲突问题的解决" Weblogic是Oracle公司出品的一款Java EE应用服务器,广泛应用于企业级应用系统中。然而,在部署Java项目到Weblogic服务器时,经常会遇到包冲突问题,导致应用程序...

    websphere下部署CXF项目jar包冲突问题解决方式

    在websphere8.5 下部署含有CXFwebservice的war包无法正常启动,...归根结底原因不是找不到类,而是发布后war下的jar与websphere自身平台下的jar冲突了,要解决此问题就要通过在websphere下建立共享库来根除,可参考附件

    weblogic10 与hibernate冲突解决方案 linux windows环境全解

    weblogic10 与hibernate冲突解决方案 错误如下:org.hibernate.QueryException: ClassNotFoundException: org.hibernate.hql.ast.HqlToken linux windows 环境解决方案全解 Linux 启动脚本添加如下: export USER_...

    将应用部署在weblogic中于JSTL冲突的问题及解决方案

    这个jar包包含了XML解析器的API,如果它与WebLogic服务器提供的解析器版本不匹配或冲突,就会引发上述错误。 为了解决这个问题,可以遵循以下步骤: 1. 检查你的`WEB-INF/lib`目录,确认是否存在`xml-apis-1.x.x....

    weblogic自学全套教程

    将WAR、EAR或EJB JAR文件上传到部署区域,设置相关部署属性后,可以进行部署。部署完成后,可以在控制台查看应用状态和性能指标。 四、WebLogic集群配置 WebLogic集群是提高系统可用性和可伸缩性的关键特性。通过...

    项目框架从tomcat到weblogic

    3. Jar 包冲突:项目框架从 Tomcat 移植至 WebLogic 可能会出现 Jar 包冲突的现象,需要预加载 Jar 包。预加载 Jar 包可以解决类加载问题。 4. 配置文件修改:由于 WebLogic 不支持通配符,因此需要在配置文件中将...

    weblogic类加载过程简述

    - **JAR类加载器**:对于单独的JAR文件,WebLogic也会创建对应的类加载器。 6. **类加载策略** - **Class-By-Class策略**:WebLogic默认采用这种策略,意味着每个类由唯一的一个类加载器加载,避免了类冲突问题。...

    linux_weblogic部署

    ### Linux环境下WebLogic 12c部署详细指南 #### 一、概述 本文档旨在提供一份详尽的Linux环境下WebLogic 12c部署指南...此外,还提供了一些关于性能优化和安全管理方面的建议,有助于进一步提高系统的稳定性和安全性。

    Centos7下纯命令方式安装Weblogic12c.docx

    java -jar /home/weblogic/weblogic12c/fmw_12.2.1.4.0_wls.jar -silent -responseFile /home/weblogic/weblogic12c/wls.rsp -invPtrLoc /home/weblogic/weblogic12c/oraInventory/ oraInst.loc ``` 安装完成后,...

    sunone8.1到weblogic10.3转移配置

    - **禁用WebLogic内置的ANTLR**:可以通过修改WebLogic的启动脚本,将`antlr-2.7.5H3.jar`添加到`PRE_CLASSPATH`中,这样可以在加载WebLogic内置的ANTLR之前优先加载此版本。 - **替换WebLogic内置的ANTLR**:如果...

    hibernate与webligic之前是冲突

    关联一个hibernate、webLogic的一个文档,可以快速的查找关于hibernate和weblogic的冲突

    CXF support WAS Weblogic

    ### CXF支持WAS与Weblogic应用服务器 #### 概述 Apache CXF是一个全面的开源框架,用于构建和开发基于服务的应用程序。它提供了一系列的功能和服务,包括但不限于SOAP、XML、REST等协议的支持,使其成为Java环境中...

    SSH项目部署在window和linux下的Weblogic上出现 ClassNotFound异常解决办法

    经过初步排查发现,这一问题可能与Hibernate框架中所依赖的`antlr.jar`文件与WebLogic自带的jar包存在冲突有关。虽然在网上搜索了许多资料,但并未找到可行的解决方案。最终通过一份由前同事提供的资料,明确了问题...

    weblogic8.14安装及环境配置指南修正版

    - 端口冲突:检查并更改WebLogic Server的默认端口,避免与其他服务冲突。 - 访问权限:确保WebLogic相关的目录和文件有适当的读写权限。 - JDK版本不兼容:确认JDK版本与WebLogic Server版本匹配。 通过以上...

Global site tag (gtag.js) - Google Analytics