weblogic配置相关
详细请参考
http://edocs.weblogicfans.net/wls/docs81/webapp/sessions.html
weblogic Server允许通过设置weblogic应用程序扩展描述符(weblogic.xml)配置jsp容器,该文件通常位于web应用程序的web-inf目录下。一般不通过修改weblogic文件直接配置,而是通过控制台配置该文件,在Deploments–>web Application–>defaultWebApp中配置。可在开发和生产环境中配置不同的信息。
主要配置信息:
compilerSupportsEncoding
//true--支持使用字符集
encoding
//指定jsp文件的默认字符集,如gb2312;
vervose
//是否将调试信息输出到浏览器和日志;
keepgenerated
//是否让编译jsp文件产生的.java文件持续存在;
Page Check Seconds
//正数--在以秒为单位的时间间隔检查jsp文件是否发生了修改,如果是则重新编译;
// 0--在每一个请求检查jsp;
//-1--不对jsp文件进行检查。
Precompile
//true--在weblogic服务器启动时自动编译所有的jsp。
Debug Enable //true--是否允许调试。
在进行web开发的时候,我们都希望自己修改的内容在不重启服务的时候立即生效,这样可以极大的方便开发和调试。若出现不立即生效的情况,通常解决方法有:
1. 检查weblogic.xml配置文件,
关于weblogic环境修改文件不立即生效的解决方法
<jsp-descriptor>
<jsp-param>
<param-name>pageCheckSeconds</param-name
<param-value>-1</param-value>
</jsp-param>
</jsp-descriptor>
<container-descriptor>
<servlet-reload-check-secs>-1</servlet-reload-check-secs>
</container-descriptor>
请将上述两个数值修改为0。
pageCheckSeconds:正数--在以秒为单位的时间间隔检查jsp文件是否发生了修改,如果是则重新编译;
0--在每一个请求检查jsp;
-1--不对jsp文件进行检查。
servlet-reload-check-secs:WebLogic 的Web容器每隔servlet-reload-check-secs间隔就会检查WEB-INF/classes中是否有文件被修改过,数值定义同上。默认为1。
<container-descriptor>
<prefer-web-inf-classes>true</prefer-web-inf-classes>
</container-descriptor>
从节点名称上也能比较清楚知道该设置的含义,优先使用Web应用里加载的类。
如果什么时候发现在Tomcat下用的好好的,但是放到weblogic下就出了问题,那么多半在\WEB-INF\weblogic.xml添上上面的设置就会好的,当然有可能还需要添加一些jar包。
今天遇上的错误是:’org.apache.axis.transport.http.AxisServlet’ doesn’t have a default constructor,调试了好一阵才发现我原来已经知道怎么解决这个问题,只要添加上面的设置。…
一:weblogic 页面访问速度比tomcat慢的原因和解决办法
公司有个项目,部署在weblogic8.1上之后,发现比在tomcat下慢很多,经过分析排查,原因是web应用的WEB-INF下的weblogic.xml里的参数设置不合理(使用默认值有时并非最佳值)造成的,具体说明如下:
1:pageCheckSeconds
<jsp-descriptor>
<param-name>pageCheckSeconds</param-name>
<param-value>-1</param-value>
</jsp-descriptor>
pageCheckSecond的默认值是1,表示每隔1秒对JSP页面进行检查,检查JSP页面是否被修改、是否需要重新编译。
系统上线后,需要对该默认值修改为-1,表示永不检查。修改为-1的一个缺点是:对于页面的修改需要重新部署整个WEB应用。
2:servlet-reload-check-secs
该参数的默认值也是1,每隔1秒检查servlet是否被修改并需要重新编译。这里建议修改为-1,表示永不检查,具体设置如下:
<container-descriptor>
<servlet-reload-check-secs>-1</servlet-reload-check-secs>
</container-descriptor>
二:应用程序的jar包和weblogic类冲突的问题
公司的项目还遇到这样一个问题,Tomcat下用的好好的,但是放到weblogic下就出了问题,最可能造成这样的原因是应用程序的jar包和weblogic下的jar包冲突。可以在weblogic.xml里设置,具体如下:
<container-descriptor>
<prefer-web-inf-classes>true</prefer-web-inf-classes>
</container-descriptor>
从节点名称上也能比较清楚知道该设置的含义,优先使用Web应用里加载的类。
三:查看weblogic编译jsp文件产生的.java文件
<jsp-param>
<param-name>keepgenerated</param-name>
<param-value>true</param-value>
</jsp-param>
keepgenerated:是否让编译jsp文件产生的.java文件持续存在,如果设置为true,就可以在部署的环境查看jsp产生的.java文件,方便调试错误。…
<?xml version="1.0" encoding="UTF-8"?>
<weblogic-web-app xmlns="http://www.bea.com/ns/weblogic/weblogic-web-app"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.bea.com/ns/weblogic/weblogic-web-app http://www.bea.com/ns/weblogic/weblogic-web-app/1.0/weblogic-web-app.xsd">
<wls:weblogic-version>10.3.6</wls:weblogic-version>
<wls:context-root>ProxyApp</wls:context-root>
<!-- 为web.xml所定义角色赋值 如果是Weblogic8.1SP2或者之前的版本,可以不定义security-role-assignment
如果是SP3,必须手工添加所有principal(角色或角色组); 详细介绍请参考PAFA3开发设计指南文档。 -->
<security-role-assignment>
<!--role-name必须跟web.xml中security-role标记下的role-name取值相同 -->
<role-name>pafaDemoUser</role-name>
<!--principal-name必须是UM中定义的角色或者角色组,不能是用户 -->
<principal-name>r_usermanager_rm_user</principal-name>
<principal-name>p_g_rmtest03_myopr</principal-name>
<principal-name>Administrators</principal-name>
</security-role-assignment>
<jsp-descriptor>
<jsp-param>
<param-name>pageCheckSeconds</param-name>
<param-value>1</param-value>
</jsp-param>
<jsp-param>
<param-name>compilerSupportsEncoding</param-name>
<param-value>true</param-value>
</jsp-param>
<jsp-param>
<param-name>encoding</param-name>
<param-value>GB2312</param-value>
</jsp-param>
<jsp-param>
<param-name>verbose</param-name>
<param-value>true</param-value>
</jsp-param>
<jsp-param>
<param-name>printNulls</param-name>
<param-value>false</param-value>
</jsp-param>
<jsp-param>
<param-name>keepgenerated</param-name>
<param-value>true</param-value>
</jsp-param>
</jsp-descriptor>
</weblogic-web-app>
解决Weblogic域创建、启动、进入控制台慢问题
搭建Weblogic 11g和12c环境时发现,安装正常,以默认组件安装,但是创建域的时候特别慢,一般需要几分钟至10分钟,卡在“创建域安全信息”那一行,创建完成后,启动偶尔也很慢,也卡在域安全信息那一步,进入console,只出来标题,页面内容至少需要几分钟才能出来,只有第一次进入console会卡,以后速度正常,但是重启后依旧第一次卡。
到网上搜索,是linux下java生成随机数有bug,改法有几种,最好的改法是修改jdk:
vi $JAVA_HOME/jre/lib/security/java.security
将
securerandom.source=file:/dev/urandom
改为:
securerandom.source=file:/dev/./urandom
OK,完美解决!
页:
[1]