`

Tomcat迁移至Websphere遇到的问题

阅读更多
应用框架如下:Struts1.2+Spring2.0+Hibernate3.2

JDK的差别
不得不说Java的思想造福了大众,但是过多的Jdk版本我们不知所从,IBM的JDK和SUN官方的JDK有一些区别,我不知道区别有多大,但是我确实碰见了,如下代码:

       /**

        * 注意这个方法在IBM JDK下有错误

        *

        * @param passPhrase

        */

       public DesEncrypter(String passPhrase) {

              try {

                     // Crate the key

                     KeySpec keySpec = new PBEKeySpec(passPhrase.toCharArray(), salt,

                                   iterationCount);

                     SecretKey key = SecretKeyFactory.getInstance("PBEWithMD5AndDES").generateSecret(

                                   keySpec);


                     ecipher = Cipher.getInstance(key.getAlgorithm());

                     dcipher = Cipher.getInstance(key.getAlgorithm());



                     // Prepare the parameter to the ciphers

                     AlgorithmParameterSpec paramSpec = new PBEParameterSpec(salt,

                                   iterationCount);



                     // Create the ciphers

                     ecipher.init(Cipher.ENCRYPT_MODE, key, paramSpec);

                     dcipher.init(Cipher.DECRYPT_MODE, key, paramSpec);

              } catch (Exception ex) {

                     ex.printStackTrace();

              }

       }

IBM JDK下PBEWithMD5AndDES没有这个参数(注意红色字体部分),报错,无法实例化!如果使用了DES的加密,自己另想办法吧!IBM JDK的JavaDoc,找了好久没有找到!

过于严苛的DTD问题
一个很简单的Spring配置文件,Tomcat下没有任何问题,WebSphere下在加载这个文件的时候会提示找不到beans定义错误,为什么呢?

<?xml version="1.0" encoding="UTF-8"?>

<!DOCTYPE beans PUBLIC "-//SPRING//DTD BEAN//EN"

    "http://www.springframework.org/dtd/spring-beans.dtd">



<beans>

……

</beans>

改成以下形式吧,不要问为什么!

<?xml version="1.0" encoding="UTF-8"?>

<beans xmlns="http://www.springframework.org/schema/beans"

    xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"

    xsi:schemaLocation="http://www.springframework.org/schema/beans http://www.springframework.org/schema/beans/spring-beans-2.0.xsd">

……

</beans>

Filter与Servlet加载顺序
在Tomcat下工作久了,你会认为这不是个问题,但是Websphere下确实很灵异,过滤器会晚于Servlet加载,也就是说Tomcat与Websphere处理这个问题的时候是相反的,Tomcat会先加载Filter,然后在加载你的Servlet,而Websphere,先处理Servlet,然后在处理Filter。以下代码中红色部分是在Filter中初始化的,在Websphere下,会取得null,而Tomcat很正常。

       /**

        * Initialization of the servlet. <br>

        *

        * @throws ServletException

        *             if an error occure

        */

       public void init() throws ServletException {

              try {

                     ApplicationContext context = Context.getContext(this

                                   .getServletContext());

                     ISingleGenericDAO tempDao = (ISingleGenericDAO) context

                                   .getBean("singleGenericHibernateDAO");

                     List args = new ArrayList();

       args.add((String)this.getServletContext().getAttribute(GlobalNames.APP_PKXNXQ));

                     List list = tempDao.find("from Jx0408 where xnxqh = ?", args);

                     this.getServletContext().setAttribute(GlobalNames.APP_XKKB, list);

              } catch (Exception e) {

                     e.printStackTrace();

              }

       }

分享到:
评论

相关推荐

    将web应用从Tomcat5移植到Websphere6.doc

    需要注意的是,由于Websphere 6提供了更多高级功能,因此在移植过程中可能会遇到各种配置和兼容性问题。建议在移植前充分了解两种平台的区别,并做好详尽的测试工作,以确保应用能够在新环境中平稳运行。

    将web应用从Tomcat5移植到Websphere6.pdf

    在将Web应用从Tomcat5移植到Websphere6的过程中,应用打包是至关重要的一步。本篇文章将详细阐述如何使用WebSphere 5的应用程序组装工具来完成这一任务。 ##### 打包工具:WebSphere 5 应用程序组装工具 - **位置*...

    应用移植WebSphere问题列表(经验是买不到的)

    以上就是针对WebSphere移植过程中遇到的一些典型问题及其解决办法,理解并掌握这些知识有助于更顺利地进行应用迁移。在实践中,遇到的具体问题可能更为复杂,需要结合具体的日志信息和环境进行排查。

    Tomcat 6x应用服务器

    与重量级的应用服务器如IBM WebSphere或Oracle WebLogic相比,Tomcat因其轻量级的特性而受到青睐。它的体积小、启动快速,适合小型到中型的Web应用程序,尤其适用于开发和测试环境。 3. **部署与管理** 在Tomcat ...

    最新版windows apache-tomcat-10.0.23-windows-x64.zip

    Apache Tomcat是一个轻量级应用服务器,它并不像诸如IBM WebSphere或Oracle WebLogic那样提供全面的Java EE支持,而是主要关注Servlet和JSP规范的实现。Tomcat由Apache软件基金会维护,并且与Java社区的其他项目紧密...

    致远 协同管理软件 V7.0SP3 产品迁移手册

    - **不适用情况**:不涉及异构数据库之间的迁移,例如从MySQL迁移到Oracle,或者从Tomcat服务器迁移到WebSphere Application Server (WAS)等。 #### 三、应用服务器迁移步骤 1. **新应用服务器上的安装**: - 在...

    WEB項目HTTP改為HTTPS配置(TOMCAT+WAS8.5.5)

    在实践过程中,可能会遇到一些坑,如证书不被浏览器信任、端口冲突等问题。`was8.5.5配置HTTPS步骤(增加绕坑指南).docx`和`TOMCAT配置HTTPS步骤.docx`这两个文档应该包含了详细的操作步骤和解决常见问题的方法。请...

    EOS多数据源vTomcat里的配置

    - 不同服务器的数据源命名规则可能存在差异,如Jboss中通常使用`java:PUBDS`,而Websphere使用`java/pub`,迁移数据时需留意这些差异。 - 当需要访问不同的数据库时,通过`unitID`指定数据源,确保配置的`package`...

    apache-tomcat-6.0.36-windows-i64.zip

    在升级或迁移至更高版本时,需要注意的是,每个Tomcat版本可能有其特定的兼容性和API变更,因此,提前测试和评估是必要的。虽然Tomcat 6.0.36已经不再受官方支持,但很多现有的应用程序可能依然依赖于它,因此理解其...

    javaweb 系统从Tomcat移植到WAS6.1.doc

    在将JavaWeb系统从Tomcat移植到WebSphere Application Server (WAS) 6.1的过程中,首先需关注的是环境配置与适配问题。这包括但不限于更改数据库连接配置、调整应用程序包(WAR文件)以及设置应用服务器的运行参数等...

    flowable 6.2官方汉化文档带运行demo

    对于遇到问题或想要报告问题的开发人员,文档中建议在提出问题前阅读有关如何以聪明的方式提出问题的指南,并在官方论坛或Github问题跟踪器中提出。 Flowable的版本控制策略遵循MAJOR.MINOR.MICRO的三元组版本号...

    ADF开发指南第三十四章

    如果遇到任何问题,应参照官方文档或社区资源进行故障排除。 通过上述步骤和细节的介绍,我们可以看到ADF应用程序部署过程虽然复杂但也是有序且可预测的。开发者可以根据具体的部署需求和技术背景选择合适的部署...

    JKS2PFX证书转换工具

    通常,JKS用于Java应用程序和服务器,如Apache Tomcat或IBM WebSphere。而PFX文件格式则被广泛用于Windows环境,尤其是在需要将私钥和证书一起导出时,例如在配置SSL/TLS连接或者迁移证书到其他系统时。 描述没有...

    SmartBi安装配置指南

    这种安装方式适用于有特殊需求的用户,例如需要在Unix/Linux操作系统上安装,或者希望使用特定的应用服务器(如Tomcat、JBoss、WebSphere、WebLogic等)和数据库(如MySQL、HSQL、Oracle、DB2等)。手动安装要求用户...

    dasdafa古典风格打工的古典风格打工的

    5. **Web服务器**:“IBM WAS(WebSphere Application Server)”和“Apache Tomcat”是两种常用的Java应用服务器。IBM WebSphere是功能强大的商业产品,提供全面的管理和安全性特性,而Apache Tomcat则轻量级且开源...

    Enovia Matrixone 开发之《install1071.pdf》

    1. **系统准备**:确保硬件配置满足最低要求,操作系统兼容,并且安装了必要的依赖组件,如数据库服务器(如Oracle或SQL Server)、中间件(如IBM WebSphere或Tomcat)。 2. **环境配置**:设置环境变量,配置...

    揭开J2EE集群的面纱 pdf

    4.2.4.WebLogic, WebSphere, JBoss的方案:结对服务器(Paired servers)复制 4.2.5.IBM的方案:集中状态服务器 4.2.6.Sun的方案:专用服务器 4.2.7.性能问题 4.2.7.1.何时备份会话 4.2.7.2.备份颗粒度 4.2.8.其他的...

    服务器虚拟化技术方案参照.pdf

    应用程序则包括数据库、Web服务器(如Tomcat、WebSphere、WebLogic)、还有其他中间件等。 7. 许可和成本效益:虚拟化技术可以大幅减少硬件需求和成本,但同时也要考虑软件许可问题。例如,某些操作系统和数据库...

    bboss会话共享培训文档

    它还支持跨多个主流应用服务器(如Tomcat、WebLogic、WebSphere、Jetty等)部署,并且没有会话粘滞性的约束,允许客户端请求均匀地分派给集群中的各个节点。 安全性方面,bboss会话共享通过在客户端基于cookie机制...

Global site tag (gtag.js) - Google Analytics