WebLogic常见问题

http://www.javaeye.com/topic/204596

myeclipse+weblogic10的配置,配置成功

运行中可能失败,由于weblogic10不稳定,重启机器后可以使用了

web工程使用到hibernate3时可能出现问题

ClassNotFoundException: org.hibernate.hql.ast.HqlToken

参考http://blog.chinajavaworld.com/entry.jspa?id=829

把本地的antlr.jar包考到weblogic.jar所在目录,在myeclipse配置服务器的path选项中添加这个antlr.jar包后运行OK

下面转载了可能出现的其他问题和解决方法:

1.其中发现jmesa处理时找不到配置文件,对应下面的问题6,我是改用archive方式发布后就OK了

2.CXF在WebLogic10.3上的部署出现问题:org.apache.cxf.js.rhino.DOMPayloadProvider" failed to preload

解决方法是web.xml文件的头改为<web-app xmlns="http://java.sun.com/xml/ns/j2ee">

3.有<%@ taglib prefix="c" uri="http://java.sun.com/jstl/core_rt" %>无法处理,该工程中用到的jstl.jar包来自MyEclipse,找一个放到本工程的lib库下,可解决

4.避免在lib库中出现重复包

5.Hibernate-Validate-4.0.jar的不支持,用到该包,要用以前的Hibernate-Validate.jar包

OS:Windows XP

WebApp Server:Tomat5.5 WebLogic  server 10 (中文版)

IDE:Bea workshop for weblogic platform。

一.IDE注意事项

创建动态web项目,选择是否共享j2ee库,如果共享,则需要域的共享库里面包含项目所需的库,比如beeHive netUi;

不共享,则将所需的库拷贝到WEB-INF/lib目录,并自动创建相关配置文件于WEB-INF下

如果访问页面时出现如下错误:

index.jsp:2:4: 使用该 URI 无法找到标记库。可能是因为 URI 不正确或解析 .tld 文件时出错。

<%@taglib uri="http://beehive.apache.org/netui/tags-html-1.0" prefix="netui"%>

请删除多余的配置文件,或者重新建立一个工程,在向导第二页选择好正确的配置。

二.WebLogic基础知识

一个域可以包括多个服务器,应用程序依赖于某个服务器,通过部署-〉某应用程序-〉目标 来配置

wl_server是weblogic默认域,通过开始菜单-〉Bea products->tools->Weblogic Server来启动

要创建自己的域,则可以通过开始菜单-〉Bea products->tools->Configuration wizard来创建

登录地址:http://localhost:7001/console/login/LoginForm.jsp

登录用户密码:weblogic/weblogic

1.部署war之后,测试时发生错误:

Error   503--Service   Unavailable

From   RFC   2068   Hypertext   Transfer   Protocol   --   HTTP/1.1:

.....

解决办法:一般是在刚刚激活更改后,就进行测试,还需要将该应用程序启动,状态为“活动”之后再测试就可以了。

2.连接池测试时出错:

Warning! Connectivity to backend database not verified. This is either because required connection pool attribute "TestConnectionsOnReserve" has not been enabled, or an invalid value has been specified for attribute "TestTableName". Please check the server log for more details..

配置连接缓冲池,在“高级”中选中“保留时测试连接”即可。此时需要先激活更改再进行测试。否则还会报错。

3.jdbc jndi错误:

javax.naming.NameNotFoundException: Unable to resolve 'jdbc_fbysss. Resolved ''; remaining name 'jdbc_fbysss'

首先要在控制台中点击左边的控制栏中的服务->JDBC新建一个数据源,数据源名称无所谓,jndi name一定要注意,比如取名叫jdbc_fbysss,而且,jdbc源必须依赖于一个server。否则无法启动。

对于Spring项目,修改applicationContext.xml的dataSource,(Tomcat的连接池在这里就不需要了)。

<!-- 数据源缓冲池 -->  <bean id="dataSource"   class="org.springframework.jndi.JndiObjectFactoryBean">

<property name="jndiName" value="jdbc_fbysss"/><!--两者要一样-->

<property name="resourceRef">

<value>false</value>

</property>

</bean>

4.xml校验错误

(1)hbm.xml

org.dom4j.DocumentException: unknown protocol: platform. Nested exception: unknown protocol: platform

这个经检查是workshop导出时 ,hbm.xml文件生成错误。修改过来就好了

(2)struts-config.xml

正式部署时出现异常:

ERROR Digester        []: Parse Error at line 2 column

15: Document root element "struts-config", must match DOCTYPE root "null".

org.xml.sax.SAXParseException: Document root element "struts-config", must match

DOCTYPE root "null".

需要在struts-config.xml中第二行加入<!DOCTYPE   struts-config   PUBLIC   "-//Apache   Software   Foundation//DTD   Struts   Configuration   1.2//EN"   "http://struts.apache.org/dtds/struts-config_1_2.dtd">

5.ServletApi实现不一致情况

发现一个奇怪的现象,tomcat中,一个servlet的子类,如果没有声明init方法,会自动执行父类的init方法,而weblogic不会。

解决办法是显式声明init,super.init();

6.莫名其妙空指针错误

完整错误信息:

java.io.FileNotFoundException: F:\bea\wlserver_10.0\samples\domains\workshop\servers\cgServer\tmp\_WL_user\prj_fbysss\mlh5uz\war (拒绝访问。)

at java.io.FileInputStream.open(Ljava.lang.String;)V(Native Method)

at java.io.FileInputStream.<init>(FileInputStream.java:106)

at workshop.util.filesystem.file.WlFileSystem.getInputStream(WlFileSyste

m.java:148)

at workshop.util.filesystem.FS.getInputStream(FS.java:262)

at javelin.jsp.JspParser.readStaticInclude(JspParser.java:3261)

at javelin.jsp.JspParser.parseStaticInclude(JspParser.java:3198)

at javelin.jsp.JspParser.processImplicitIncludes(JspParser.java:3289)

at javelin.jsp.JspParser.jspParse(JspParser.java:703)

at javelin.jsp.JspParser._parse(JspParser.java:504)

at javelin.jsp.JspParser.parse(JspParser.java:497)

at javelin.jsp.JspAnalyzer.parseFile(JspAnalyzer.java:113)

at javelin.jsp.JspAnalyzer.parse(JspAnalyzer.java:101)

at javelin.ProxySourceFile.parse(ProxySourceFile.java:117)

at javelin.SourceFile.getAst(SourceFile.java:542)

at javelin.SourceFile.getAst(SourceFile.java:516)

at javelin.ProxySourceFile.codeGen(ProxySourceFile.java:215)

at javelin.SourceFile.codeGen(SourceFile.java:310)

at javelin.client.ClientUtilsImpl$CodeGenJob.run(ClientUtilsImpl.java:11

05)

at javelin.client.Job.performJob(Job.java:81)

at javelin.client.ThreadPool$WorkerThread.run(ThreadPool.java:215)

<2008-8-23 下午07时15分11秒 CST> <Error> <HTTP> <BEA-101017> <[weblogic.servlet.

[email protected] - appName: prj_fbysss, name: 'prj_fbysss', context-path: '/prj_fbysss] Root cause of ServletException.

java.lang.NullPointerException

at javelin.jsp.JspAnalyzer.parse(JspAnalyzer.java:104)

at javelin.ProxySourceFile.parse(ProxySourceFile.java:117)

at javelin.SourceFile.getAst(SourceFile.java:542)

at javelin.SourceFile.getAst(SourceFile.java:516)

at javelin.ProxySourceFile.codeGen(ProxySourceFile.java:215)

Truncated. see log file for complete stacktrace

>

最后发现是web.xml中<include-coda/>一句不对,去掉就好了,很怪异。

<taglib>

<taglib-uri>http://www.sss.com/select</taglib-uri>

<taglib-location>/WEB-INF/tlds/select.tld</taglib-location>

</taglib>

<taglib>

<taglib-uri>http://www.sss.com/tree</taglib-uri>

<taglib-location>/WEB-INF/tlds/tree.tld</taglib-location>

</taglib>

<!--web 项目配置-->

<jsp-property-group>

<description>

WEB项目配置

</description>

<display-name>JSPConfiguration</display-name>

<url-pattern>*.jsp</url-pattern>

<el-ignored>false</el-ignored>

<page-encoding>gbk</page-encoding>

<scripting-invalid>false</scripting-invalid>

<!--这句居然引起webloic错误!!!! include-coda/-->

</jsp-property-group>

</jsp-config>

7.类冲突问题

(1)JSTL解析失败

index.jsp:1:1: validator 类 "org.apache.taglibs.standard.tlv.JstlCoreTLV" 失败,出现如下异常: "java.lang.ClassCastException: weblogic.xml.jaxp.RegistrySAXParserFactory"。

<%@page contentType="text/html;charset=gbk" language="java"%>

项目属性-〉项目构面中的设置将记录在.setting/org.eclipse.wst.common.project.facet.core.xml文件中。

最后是把prefer-web-inf-classes设置为false就可以了。

(2)HQL语句执行失败

org.springframework.orm.hibernate3.HibernateQueryException: ClassNotFoundException: org.hibernate.hql.ast.HqlToken

这种情况是包版本冲突,必须设置prefer-web-inf-classes设置为true。

这样一来,有的包需要true,有的需要false,怎么办?Weblogic的确够恶心的。JSTL的包都已经放webapp下了,设置prefer-web-inf-classes设置为ture还不行,只好采取以下稍显麻烦的方法:

在workshop开发环境下,启动的服务器目录是

F:\bea\wlserver_10.0\samples\domains\workshop\bin

修改启动脚本startWebLogic.cmd

找到set CLASSPATH=%SAVE_CLASSPATH%,在后面加入

@REM sss added

set PRE_CLASSPATH=%WL_HOME%\server\lib\antlr-2.7.6rc1.jar;

set CLASSPATH=%PRE_CLASSPATH%;%CLASSPATH%

其中,antlr-2.7.6rc1.jar包需要拷贝到F:\bea\wlserver_10.0\server\lib下。

正式发布的时候,需要修改对应域目录下的启动脚本

比如f:\bea\user_projects\domains\fbysssDomain\bin\startWebLogic.cmd

8.部署问题

部署时出现如下错误:

<2008-8-23 下午07时37分42秒 CST> <Warning> <Deployer> <BEA-149124> <

Failures were detected while initiating redeploy task for application 'prj_fbysss'. Error is: '

[Deployer:149163]The domain edit lock is owned by another session in non-exclusi

ve mode - this deployment operation requires exclusive access to the edit lock a

nd hence cannot proceed.'>

解决:进入http://localhost:7001/console,释放配置,再次部署即可。

注:更新war:必须在删除该应用,并激活更改之后才能覆盖。

但是用war方式,获取资源路径的方法和tomcat不同,存在臭名昭著的getRealPath等问题,移植困难,所以用目录方式部署比较好。

具体方法:先把war解压,然后在weblogic控制台里面选择目录部署。

原文地址:http://blog.51cto.com/sf1314/2056587

时间: 2024-11-05 23:23:39

WebLogic常见问题的相关文章

weblogic常见问题转

转自:http://wenku.baidu.com/link?url=lRRp2-pF2CHoSxff7ynqDKWpk9aJ7sHoOWm78_74_mSOiqC-qJMn3kAlJRqv2WnYSktzjpQF951Hf0k7kwwZMwAewKglR0sggYsLZOCdBHG myeclipse+weblogic10的配置,配置成功 运行中可能失败,由于weblogic10不稳定,重启机器后可以使用了 web工程使用到hibernate3时可能出现问题 ClassNotFoundExce

WebLogic安装使用及常见问题

WebLogic的下载与安装 参考地址:http://blog.csdn.net/acmman/article/details/70093877 安装常见问题: 1. 虚拟内存不足 我的电脑-->属性-->高级-->性能-->设置-->高级-->虚拟内存.调大就行. 2. 版本不兼容 参考地址: https://zhidao.baidu.com/question/262059006101736125.html 参考地址: http://blog.csdn.net/pip

weblogic应用平台常见问题小结

http://blog.sina.com.cn/s/blog_4aa08b7c010004yc.html 1.当以另一用户登录系统后,系统却显示的是前一用户的身份. 这是由于页面信息没有刷新造成的.将IE菜单的Internet选项---设置---检查所存网页的较新版本设为:每次访问此页时检查. 2.为什么在IE中登录时会出现  Error  404的错误提示?      登录地址错误或服务没有正常启动.      在Weblogic中没有发布_appsdir_applus_war包所致.进入we

LR常见问题整理

1.LoadRunner录制脚本时为什么不弹出IE浏览器? 当一台主机上安装多个浏览器时,LoadRunner录制脚本经常遇到不能打开浏览器的情况,可以用下面的方法来解决. LR11 无法弹出ie浏览器,或者ie已停止工作问题的解决方法汇总 . 1)系统属性,高级选项卡下,性能里面,单击设置按钮,修改数据执行保护为“只为关键windows程序和服务启用数据执行保护”,然后,重启: 上述方法我采用了第一个,重启后问题解决. 2)若果被测试系统在本机上,访问地址为:http://127.0.0.1:

weblogic无法启动问题与解决

常见问题FAQ : A:weblogic无法启动,错误信息包含如下: <000000> Q:LDAP启动失败,导致的问题可能是用root账户启动了weblogic.检查mydomain目录下myserver/ldap/ldapfiles下的文件权限,是否是weblogic用户组,如果还是无法启动,请删除.tran文件. A:weblogic无法启动,错误信息包含如下: Q:问题是管理域无法与用户域通信.查看linux系统主机名,查看/etc/hosts文件,看是否有如下一行主机记录,如果没有,

LoadRunner常见问题整理(转)

首先要感谢群友的无私分享,才能得到这篇好的学习资料,整理得太好了,所以收藏保存,方便以后学习. 一:LoadRunner常见问题整理 1.LR 脚本为空的解决方法: 1.去掉ie设置中的第三方支持取消掉 2.在系统属性-高级-性能-数据执行保护中,添加loadrunner安装目录中的vugen.exe文件. 有可能是由于录制的URL地址采用的是localhost的问题,改成分配的IP地址或127.0.0.1试试. 3.插入文本检查点步骤时,使用web_reg_find,通常TextPfx和Tex

【转发】LR常见问题

原地址:LR常见问题 一.Step download timeout (120 seconds) 这是一个经常会遇到的问题,解决得办法走以下步骤: 1. 修改run time setting中的请求超时时间,增加到600s,其中有三项的参数可以一次都修改了,HTTP- request connect timeout,HTTP- request receieve timeout,Step download timeout,分别建议修改为600.600.5000.run time setting设置

Weblogic10.3项目部署出错的一些常见问题分析

1.在安装完成weblogic之后,我们需要把hibernate框架使用的一个jar包(antlr-2.7.6rc1.jar)放到weblogic的安装目录里.具体路径为D:\bea\wlserver_10.3\common\lib. 如果我们还不能够解决冲突的话则要到工程所在的域文件夹D:\bea\user_projects\domains\base_domain\bin里,setDomainEnv.cmd的文件中修改服务的环境变量,把A步骤中的路径加上:右键 -> 编辑,打开文件,在set

SuSE系统之Weblogic安装部署(非图形安装)

目 录引言 1目的 1范围 1文档约定 1 应用部署准备 21.1.应用包及说明 21.2.硬件环境 21.3.软件环境 21.4.操作工具 2 xlcpt项目部署 32.1.weblogic配置信息 32.2.Weblogic安装准备工作 32.2.1.创建weblogic用户并设置同名密码(weblogic用户仅用于安装) 32.2.2.创建xlcpt用户并设置同名密码(xlcpt用户用于发布项目) 32.2.3.安装JDK 32.2.4.安装cronolog日志切割软件 42.3.Webl