精华帖 (1) :: 良好帖 (1) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2009-11-12
最后修改:2009-11-12
项目框架: struts-2.1.6,spring 2.5.6 ,ibatis-2.3.4,作为war包发布 1 启动weblogic报错:解析strtus.xml文件失败 单步跟踪发现在strtus.xml中有 <include file="struts-config/*/struts-*.xml" /> 利用通配符匹配配置文件,但是在weblogic下不能解析,只有老老实实的把struts的配置文件一个个引入 2 正常启动,但是运行时报错: DateUtils.addDate方法找不到。 这个文件就是weblogic优先加载自己bea\modules\com.bea.core.apache.commons.lang_2.1.0.jar,而不是我们web-inf\lib下的commons.lang_2.3.jar 按照要求在web-inf下增加weblogic.xml <weblogic-web-app xmlns="http://www.bea.com/ns/weblogic/90"> <container-descriptor> <prefer-web-inf-classes>true</prefer-web-inf-classes> </container-descriptor> </weblogic-web-app> 3 启动又报错: java.lang.ClassCastException: weblogic.xml.jaxp.RegistryDocumentBuilderFactory at javax.xml.parsers.DocumentBuilderFactory.newInstan ce() Ljavax.xml.parsers.DocumentBuilderFactory;(Unk nown Source) at org.springframework.beans.factory.xml.XmlBeanDefin itionReader.createDocumentBuilderFactory (XmlBeanDe finitionReader.java:250) at org.springframework.beans.factory.xml.XmlBeanDefin itionReader.doLoadBeanDefinitions 如果prefer-web-inf-classes = false则能正常启动 这个问题在于web-inf\lib下的jar有冲突,不同jar中存在相同全限定名的class类名。 又花了不少时间才找到它 : xml-apis.jar,去掉后系统能正常启动了 4 测试发现还有些错误 我们自己的资源文件找不到,资源文件在web-inf\conf\ 下 程序中加载的路径是 ../conf, weblogic不认 ../ 后来调整了文件路径,放web-inf/classes/conf下,加载路径用 conf/即可 还有个问题就是我们用到了ecside来展现大数据的表格,这个比extjs的gridPanel性能要好 但是在jsp中有ecside的标签马上报错。 这个问题检查发现是少了standard.jar,jstl.jar,为啥在tomcat,jboss就没有报错呢。。 顺便提下weblogic的数据库连接池的配置 jndiname = JNDI_xxx 在spring的applicationContext.xml配置的dateSources如下 <bean id="dsJndiTemplate" class="org.springframework.jndi.JndiTemplate"> <property name="environment"> <props> <prop key="java.naming.provider.url">t3://192.156.1.42:8000</prop> <prop key="java.naming.factory.initial">weblogic.jndi.WLInitialContextFactory</prop> </props> </property> </bean> <bean id="dataSource" class="org.springframework.jndi.JndiObjectFactoryBean"> <property name="jndiName"> <value>JNDI_xxx</value> </property> <property name="resourceRef"> <value>true</value> </property> <property name="jndiTemplate"> <ref local="dsJndiTemplate" /> </property> </bean> 结论:折腾了2天时间解决了了一些问题,但是由于时间问题。很多只是简单的用了解决了下,没有深入了解下去,这里我权当抛个砖,希望各位大侠来分享自己的经验 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2009-11-12
黎叔还是那么谦虚
|
|
返回顶楼 | |
发表时间:2009-11-14
迁移的时候JDK版本没变化吧,包括运行平台?
|
|
返回顶楼 | |
发表时间:2009-11-14
最后修改:2009-11-14
以前jboss下jdk是1.5,安装weblogic10后直接使用自带的jdk1.6_5因为老的jdk1.5_17无法启动了,
这次jdk的切换没有遇到什么问题 |
|
返回顶楼 | |
发表时间:2009-11-14
这种迁移就是容易出现一些问题,学习啦
|
|
返回顶楼 | |
发表时间:2009-11-15
weblogic是收费的吧! Jboss应该已经够满足需求,你们公司真有钱
|
|
返回顶楼 | |
发表时间:2009-11-15
WebLogic优先加载自己的包,这一点很是郁闷。
上次遇到个棘手的问题。Xerces的包和项目中的包版本不同,函数不一致。 最后下了源码,整合了几个版本,替换了Weblogic里的包才好。 我用8.1。。 |
|
返回顶楼 | |
发表时间:2009-11-16
cue2008 写道 weblogic是收费的吧! Jboss应该已经够满足需求,你们公司真有钱
有的时候不是自己公司要用,是客户指出要用websphere或者weblogic的,谁不知道直接用jboss和tomcat好啊。 |
|
返回顶楼 | |
发表时间:2009-11-16
最后修改:2009-11-16
weblogic是客户自己采购的,大约17万吧,本来是建议用jboss的,
weblogic的负载均衡策略是每个session都是访问同一个节点,这样可以避免不同节点间的session复制。 但是当访问的节点down后访问其他节点会有session丢失的问题 |
|
返回顶楼 | |
发表时间:2010-06-22
还有人 关注这个问题么
Tomcat 6.0的项目 用hibernate3 struts2 spring2.5 迁移到Weblogic 10.3.3时候 出现了错误 HQL语句执行有问题 Caused by: org.hibernate.QueryException: ClassNotFoundException: org.hibernate.hql.ast.HqlToken [select t.datatypeId,t.datatypeName from com.umessage.ticket.domain.BdDatatypeDt t order by t.datatypeId ] 是jar包冲突么? |
|
返回顶楼 | |