websphere 官方文档
http://www-01.ibm.com/support/knowledgecenter/SS7JFU_8.5.5/com.ibm.websphere.express.doc/ae/twbs_thirdparty.html?cp=SS7JFU_8.5.5%2F1-13-1-12-1
我的cxf应用程序使用的是cxf2.5.2,将 放在四个jar包放在ibm lib包下的endorsed_apis中
javax.annotation-api-1.2.jar
jaxb-api-2.1.jar
jaxb-impl-2.1.13.jar
jaxws-api-2.1-1.jar
这里说个最佳实践,因为jdk不管是sun的还是ibm的都会有冲突跟cxf,你可以先用个1.5的环境让你的cxf程序能够运行起来,这样所有的jar包依赖都在自己的lib中了
以下是我使用的几个jar包冲突的放在共享库中,模块引用,类加载器引用了(有些可能不需要引用,我就没一一再试了)
<classPath>D:\IBM\WebSphere\AppServer\lib\oaJars\httpclient-4.3.1.jar</classPath>
<classPath>D:\IBM\WebSphere\AppServer\lib\oaJars\httpcore-4.3.jar</classPath>
<classPath>D:\IBM\WebSphere\AppServer\lib\oaJars\httpmime-4.3.1.jar</classPath>
<classPath>D:\IBM\WebSphere\AppServer\lib\oaJars\xmlschema-core-2.1.0.jar</classPath>
<classPath>D:\IBM\WebSphere\AppServer\lib\oaJars\javax.annotation-api-1.2.jar</classPath>
<classPath>D:\IBM\WebSphere\AppServer\lib\oaJars\commons-logging-1.1.1.jar</classPath>
部分问题处理:
如果打开was启动不了(如果将websphere作为系统程序的话执行以下操作,如果不是忽略1)
1、WSService
2、和IBMWASjsglcz两个进程
3、还有一个java进程
打不开之前 先将java进程树关闭,确保WSService是运行的的,然后手动执行命令,将IBM。。。启动
安装was,之后将
应用程序服务器 > server1 > 进程定义 > Java 虚拟机 的参数配置大一点 再配置jndi数据源
//找到解压后的
D:\IBM\WebSphere\AppServer\profiles\AppSrv01\installedApps\jsgls-czoaNode01Cell\gloa_war.ear\gloa.war
查看类加载器结构
应用程序服务器 > server1 > 已安装的应用程序 > gloa_war > 管理模块 > gloa.war > 类装入器查看器
删除jar包中的jsp-api 和servlet-api,jstl-三个
Caused by:
java.lang.NoClassDefFoundError: com.sun.crypto.provider.SunJCE
at java.lang.J9VMInternals.verifyImpl(Native Method)
at java.lang.J9VMInternals.verify(J9VMInternals.java:72)
at java.lang.J9VMInternals.initialize(J9VMInternals.java:134)
原因: IBM有另外的 IBMJCE 实现类 。
解决方法: 在 WEB-INF/lib 加入 jce.jar和 sunjce_provider.jar
-Dcom.ibm.websphere.webservices.DisableIBMJAXWSEngine=true
http://blog.csdn.net/a477997/article/details/38173863?utm_source=tuicool
/**/
http://stackoverflow.com/questions/25432259/failed-to-start-my-application-in-websphere-8-5-5
mine 20:51:15
http://www.webspherechina.net/club/thread-83873-1-1.html
mine 21:08:09
If you are running this project from IDE, Check your server configurations.
上述jar包从 war包中删除试试
mine 21:08:17
http://stackoverflow.com/questions/16577535/build-path-is-incomplete-cannot-find-class-file-for-javax-servlet-servletcontex
mine 22:09:02
http://www.ibm.com/developerworks/cn/websphere/library/techarticles/1111_zhangt_opensource/1111_zhangt_opensource.html
2015-07-02
mine 21:28:20
http://wenku.baidu.com/link?url=0Uz8Y9hwLhomWftTrWrln-S2F0qkUi8L6OgS_xR8PpeM-8RcTVQyo8n6nc1wWZZwnxykB2v-xh6joPezuMaSxUyCHlxilsl75dqlpMSS5kK
mine 22:17:39
若想加载自己的jar,而不是websphere相应的jar。需:
1.在应用服务器菜单中,应用程序类载入器策略设为“多个”,将应用程序类装入方式设为“最后装入父类”;
2.在应用程序菜单中,选择相应war包,设置类载入器方式为“parent_last”,设置WAR 类载入器策略为“模块”。
3.重启websphere
[@more@]
手动修改server的jvm配置(http://down.51cto.com/data/515642)
D:\IBM\WebSphere\AppServer\profiles\AppSrv01\config\cells\jsgls-czoaNode01Cell\nodes\jsgls-czoaNode01\servers\server1\server.xml
java.lang.verifyerrorjvmvrfy013加载约束违反 应该是你的程序的lib中有jar包,was类路径中也有,删除自己程序中的,加入共享库中
http://blog.csdn.net/siwangying/article/details/42081823 如:找到报错的地方 (Ljavax/xml/stream/XMLEventReader;)Ljava/lang/Object;, pc=0 找到该类所在的jar
为工作流修改sun的jce配置,was默认的是ibm jce
http://www.ibm.com/developerworks/cn/websphere/library/techarticles/0306_yu/yu.html
http://blog.sina.com.cn/s/blog_4a7318860100bi2j.html
修改安全认证配置,增加jar包:
# cd opt/IBM/WebSphere/AppServer/java/jre/lib/security/
编辑文件java.security
# vi java.security
在security.provider.9后面加一条
security.provider.10=com.sun.crypto.provider.SunJCE
将sunjce_provider.jar和jce.jar复制到opt/IBM/WebSphere/AppServer/java/jre/lib/ext下
# cp /usr/local/sunjce_provider.jar opt/IBM/WebSphere/AppServer/java/jre/lib/ex
# cp /usr/local/jce.jar opt/IBM/WebSphere/AppServer/java/jre/lib/ex
Websphere(WAS)安装war包后项目无法启动或删除,同时Websphere(WAS)无法关闭或启动的解决办法
http://blog.csdn.net/dreamcode/article/details/38367757
1、杀掉WAS进程,强制关闭WAS
执行命令:ps -ef|grep java
杀掉进程:kill -9 16974064
2、手动删除已安装war包及相关配置文件
(1) 删除war包:rm –rf /opt/IBM/WebSphere/AppServer/profiles/AppSrv01/installedApps/localhostNode01Cell/xxx_war.ear
(2) 删除对应的配置文件:rm –rf /opt/IBM/WebSphere/AppServer/profiles/AppSrv01/config/cells/localhostNode01Cell/applications/xxx_war.ear
3、 启动WAS上某个Profile,进入目录如
/opt/IBM/WebSphere/AppServer/profiles/AppSrv01/bin
执行启动命令:sh ./startServer.sh server1
遇到启动不了又删不掉项目的话
就serverindex.xml 找到这个文件,看清楚是在node下的,将gloa_war 删除掉,下面的一行,启动后控制台卸载,ok
<extendedApplicationDataElements xmi:id="ExtendedApplicationData_1436502961095" applicationName="gloa_war" standaloneModuleName="gloa.war"/>
工作流crm.xml要加入
<configValue key="AppServer" desc="配置应用服务器">websphere</configValue>
乱码问题
1.修改服务器编码类型:
(1)前台修改方法:
服务器-》服务器类型-》WebSphere Application Server-》 SuiteServer -》 进程定义 -》 Java 虚拟机
通用 JVM 参数-》-Dfile.encoding=UTF-8 -Ddefault.client.encoding=UTF-8
(2)后台修改方法:
/opt/IBM/WebSphere/AppServer/profiles/AppSrv01/config/cells/10Cell01/nodes/10Node01/servers/SuiteServer
修改其中的server.xml中的
参数genericJvmArguments="-Dfile.encoding=UTF-8 -Ddefault.client.encoding=UTF-8"
http://cxf.apache.org/docs/application-server-specific-configuration-guide.html
包含cxf的应用程序部署在websphere8.5上
最新推荐文章于 2018-09-12 18:35:51 发布