1, weblogic 安装介质的获取:
oracle官网下载是需要登录的(yangweicsd1006@126.com: 电话+Cxn)
(QQ邮箱: 电话+Yw)
WebLogic10.3.6_win32 安装包百度网盘 链接: http://pan.baidu.com/s/1ntMcVHZ 密码: qd2a
2, domain是weblogic最基础的管理单元,安装过程会创建域以及管理服务器的.
比如我自己的:
----------------------------------------------------------------
域名和路径:
base_domain
C:OracleMiddlewareuser_projectsdomains
----------------------------------------------------------------
管理员用户名和口令
weblogic weblogic_123
----------------------------------------------------------------
管理服务器
OpsServer All Local Addresses 7001 7002
3, 启动 weblogic,
可以在开始菜单中找到" Start Admin Server for Weblogic Server Domain" 来开启Weblogic服务,
也可以找到命令"startWebLogic.cmd"来启动
C:OracleMiddlewareuser_projectsdomainsase_domainstartWebLogic.cmd
4, 访问地址:
http://localhost:7001/console/ ,输入管理员账号密码登录.
5, 我安装过程中,创建的服务器名是 OpsServer ,这个服务器在启动,部署应用等等过程都是有详细的日志记录的,帮助大家查找问题.
C:OracleMiddlewareuser_projectsdomainsbase_domainserversOpsServerlogsOpsServer.log
6, 部署自己的应用。 以 ops-web 为例.
注意 对weblogic的任何修改都要重新启动 weblogic
部署过程中的常见问题:
1) java.lang.OutOfMemoryError: PermGen space. (内存溢出)
把weblogic服务器下的java VM arguments:-Xms256m -Xmx512m -XX:CompileThreshold=8000 -XX:PermSize=48m -XX:MaxPermSize=128m -Xverify:none -da
修改成:-Xms256m -Xmx512m -XX:CompileThreshold=8000 -XX:PermSize=48m -XX:MaxPermSize=256m -Xverify:none -da
设置方式:
编辑启动文件:base_domainstartWebLogic.cmd
set DOMAIN_HOME=C:OracleMiddlewareuser_projectsdomainsase_domain
set JAVA_VM=%JAVA_VM% -XX:MaxPermSize=256m
call "%DOMAIN_HOME%instartWebLogic.cmd" %*
在weblogic域的bin目录中(我的是D:DevelopWeblogicwls12120user_projectsdomainsmydomainin)的setDomainEnv.cmd(linux对应修改setDomainEnv.sh),查找-XX:MaxPermSize:
set MEM_MAX_PERM_SIZE_64BIT=-XX:MaxPermSize=256m set MEM_MAX_PERM_SIZE_32BIT=-XX:MaxPermSize=256m
这个参数是设置永久代区域的最大值,默认是256M,直接改成512M(可以根据自己电脑配置适当增大),保存,然后重新启动weblogic。发现weblogic运行速度加快,并且只有当本机内存被其他应用占用很多的时候才会再次出现这种错误。
问题解决。
注:PermGen space,permanent heap generation space,即永久代或方法区
如果多次出现的话,可能要重新启动一下weblogic.
可参考: http://www.blogjava.net/lqsun/archive/2005/06/10/5887.html
2)Cannot set web app root system property when WAR file is not expanded
本质问题是 : servletContext.getRealPath函数为空
解决办法: 在WEB-INF 下面 加 weblogic.xml
<?xml version="1.0" encoding="UTF-8"?> <wls:weblogic-web-app xmlns:wls="http://xmlns.oracle.com/weblogic/weblogic-web-app" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://java.sun.com/xml/ns/javaee http://java.sun.com/xml/ns/javaee/web-app_2_5.xsd http://xmlns.oracle.com/weblogic/weblogic-web-app http://xmlns.oracle.com/weblogic/weblogic-web-app/1.4/weblogic-web-app.xsd"> <wls:context-root>/ops-web</wls:context-root> <wls:charset-params> <wls:input-charset> <wls:resource-path>/*</wls:resource-path> <wls:java-charset-name>UTF-8</wls:java-charset-name> </wls:input-charset> </wls:charset-params> <wls:container-descriptor> <!-- yangw change false to true --> <wls:prefer-web-inf-classes>true</wls:prefer-web-inf-classes> <wls:show-archived-real-path-enabled>true</wls:show-archived-real-path-enabled> </wls:container-descriptor> </wls:weblogic-web-app>
可参考: http://blog.csdn.net/ouvidia/article/details/38453353
3) WebLogic下开发Hibernate问题 java.lang.NoSuchMethodError:javax.persistence.OneToMany.orphanRemoval()Z
问题在于Hibernate的包冲突或者没有被加载到,解决办法是 将我们应用的 hibernate-jpa-2.0-api-1.0.1.Final.jar
拷贝到C:OracleMiddlewarejdk160_29jrelibext 目录下
7,访问自己的应用出现的问题:
debug模式启动之后,运行的时候出现错误:Type mismatch: cannot convert from Tag to JspTag
把WEB-INF 下面的lib 下面的 servletapi-2.3.jar 删除掉就好了与weblogic.jar冲突。
在Linux上,启动Weblogic时总是提示输入用户名和密码, 这里采用 保存用户密码信息到 boot.properties文件中
在AdminServer中和ManagerServer中保存,比如我的应用
/home/weblogic/weblogic_domain/servers/AdminServer/security/boot.properties
/home/weblogic/weblogic_domain/servers/S1/security/boot.properties
password=登录weblogic的域用户密码
username=登录weblogic的域用户名
保存之后启动,weblogic会自动对用户名和密码加密.
在Linux上,启动weblogic应用报 java.lang.NoSuchMethodError:javax.persistence.OneToMany.orphanRemoval()Z时的解决办法?
在weblogic.xml中配置优先加载即可
部署应用时,有时会报[DeploymentService:290066]Error occurred while downloading files from admin server for deployment request "1,365,321,820,868". Underlying error is: "null" 错误, 究其原因 往往是 项目中有中文文件名,而且显示的是乱码,尤其是同一个目录下有可能有两个一模一样的乱码文件.