`
wangzi6hao
  • 浏览: 211885 次
  • 性别: Icon_minigender_1
  • 来自: sdf
社区版块
存档分类
最新评论

resin2.16升级到resin3.21 mssql2000升级到mssql2008 win2000升级到win2008 jdk1.42升级到jdk1.6_u

阅读更多

公司的crm运行的虽然比较稳定,但是版本也比较老了。
很多新的功能都用不上去。所以公司也希望能把所有的版本升一下级。
我接下这个任务,打一下前站,看看有多少东西有改的,是否改的功能很多,虽然现在还没有查完,不管怎么样,把过程记录下来,免得忘记吧。

公司crm现有环境:
操作系统:win2000server
数据库:sql2000
jdk版本:1.4.2
java服务器:resin2.16

希望升级后的版本:
操作系统:win2008server
数据库:sql2008
jdk版本:1.6_u12
java服务器:resin3.21

看到这个东东,有点头疼啊。
操作系统:
基本没什么感觉,新安装一个系统就可以了,好在用java开发基于jdk运行。所以感觉不大。

sql:
sql2000升级到sql2008,这里可苦大了。
因为sql2000里写了很多存储过程,有一比较重要的部分还涉及到了业务流程。在以以前的测试里,就发现转移到sql2005下执行时,就出错。现在在sql2008下执行,肯定也会出错的。暂时放开这个问题吧。

jdk升级:
最大问题,jdk1.4下编译的class文件,不能完美的在jdk1.6(1.5)下运行,因为生成的class文件有所差异,需要完全在jdk1.6下重新编译。重新编译完后,基本不报错了。

resin:
没很大感觉,先安装一个resin3.21再说。
因为和resin2.16的配置有一些不一要,对resin的配置也不是很了解,所以花了一点时间
由于现在只是测试是否可以跑通,所以没做优化配置。只是简单做了一下本地主目录配置。
如下:

    <host-default>


      <!--


         - With another web server, like Apache, this can be commented out


         - because the web server will log this information.


        -->


      <access-log path="log/access.log"


            format='%h %l %u %t "%r" %s %b "%{Referer}i" "%{User-Agent}i"'


            rollover-period="1W"/>





      <!-- creates the webapps directory for .war expansion -->


      <web-app-deploy path="webapps"/>


    </host-default>

  改为了

    <host-default>


      <!--


         - With another web server, like Apache, this can be commented out


         - because the web server will log this information.


        -->


      <access-log path="log/access.log"


            format='%h %l %u %t "%r" %s %b "%{Referer}i" "%{User-Agent}i"'


            rollover-period="1W"/>





      <!-- creates the webapps directory for .war expansion -->


      <web-app-deploy path="webapps"/>


    <web-app id="/" root-directory="F:\crmsys\webapps"><!--默认本地目录-->


        <jsp fast-jstl="false"/>


    </web-app>


    </host-default>

 同时改了

    <host id="" root-directory=".">


      <!--


         - configures an explicit root web-app matching the


         - webapp's ROOT -->


      


      <web-app id="/" root-directory="webapps/ROOT"/>





      <web-app id="/resin-admin" root-directory="${resin.root}/doc/admin">


        <!--


           - Administration application /resin-admin


          -->


        <prologue>


          <resin:set var="resin_admin_external" value="false"/>


          <resin:set var="resin_admin_insecure" value="true"/>


        </prologue>


      </web-app>





      <!--


      <web-app id="/resin-config" root-directory="${resin.root}/doc/config"/>


      -->


     


      <web-app id="/resin-doc" root-directory="${resin.root}/doc/resin-doc"/>


    </host>

 为:

    <host id="" root-directory=".">


      <!--


         - configures an explicit root web-app matching the


         - webapp's ROOT


      


      <web-app id="/" root-directory="webapps/ROOT"/> -->





      <web-app id="/resin-admin" root-directory="${resin.root}/doc/admin">


        <!--


           - Administration application /resin-admin


          -->


        <prologue>


          <resin:set var="resin_admin_external" value="false"/>


          <resin:set var="resin_admin_insecure" value="true"/>


        </prologue>


      </web-app>





      <!--


      <web-app id="/resin-config" root-directory="${resin.root}/doc/config"/>


      -->


     


      <web-app id="/resin-doc" root-directory="${resin.root}/doc/resin-doc"/>


    </host>

 crm就可以运行起来了。
接下来,就是乱七八糟的问题了。虽然都是小问题,可是要查到原因,改起来,还是很麻烦的。
1.resin3.2启动时,报xml解析错误,根据日志,应该是struts的配置文件 /crm/webapps/WEB-INF/fin/validation.xml 出错。找到验证设置的xml里<formset>标签,发现没有任何配置,删除后再重启resin3.2正常了。

2.resin解析<%@ page contentType="text/html;charset=UTF-8" %>出现的问题 。把页面全面用UltraEdit另存为无BOM格式的utf-8。具体参考http://cnxiaowei.iteye.com/blog /262766 这个是让我很郁闷的。不过百度和google也不是盖的。只是查了好久都没有发现更好的办法,只能一个一个文件的去转,这是很麻烦的。实在不行,就只能自 己写个java程序去转了,怎么转就自己去查资料,这里就不讨论了。

3.升级el表达式支持问题 更新web.xml配置文件2.3版本到2.4版本

<!DOCTYPE web-app PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN" "http://java.sun.com/dtd/web-app_2_3.dtd">
 


升级到

<web-app id="union" version="2.4"


xmlns="http://java.sun.com/xml/ns/j2ee"


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


xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

  由于2.4不支持<tablib>标签。解决方法是 把<taglib></taglib>用<jsp-config></jsp-config>包括起来

     <jsp-config>
        <taglib>
               <taglib-uri>ad.tld</taglib-uri>
               <taglib-location>/WEB-INF/ad.tld</taglib-location>
       </taglib>
       <taglib>
               <taglib-uri>inv.tld</taglib-uri>
               <taglib-location>/WEB-INF/inv.tld</taglib-location>
       </taglib>
        <taglib>
            <taglib-uri>/FCKeditor</taglib-uri>
            <taglib-location>/WEB-INF/FCKeditor.tld</taglib-location>
        </taglib>
        <jsp-property-group>
        <url-pattern>*.jsp</url-pattern>
        <el-ignored>false</el-ignored> <!--这里是为了支持el表达式的设置-->
        <page-encoding>utf-8</page-encoding>
        </jsp-property-group>
    </jsp-config>

 这一步里,查了很多资料,了解了一下jsp1.2 2.0 servlet2.3 2.4 el表达式之间的支持与联系。还有配置文件对应的关系。因为考虑到以后el表达式可能会用到,所以也升级上来了。
当然,这里有也jstl的一些东西:具体看http://blog.163.com/new_liu.popo/blog/static/4387092120081031331762/这篇日志更详细

4.对struts等标签格式要求严格,对<html:text property="userPhoneE" maxlength=4 style="width:59%" />不支持,后面参数必须用单引号或者双引号括起来。如:<html:text property="userPhoneE" maxlength=" 4" style="width:59%" />所有的html都要改。。。这下很惨。平时书写不注意。。。。后果很严重啊。。。。

整个下来以后,东西基本上可以查询出来了。。。。
页面都可以正常看了,但是接下来还要解决数据库连接写入问题:
对于 传入的表格格式数据流(TDS)远程过程调用(RPC)协议流不正确。参数 1 (""): 数据类型 0x38 未知。
这个问题,已经发现了。是因为用Sprinta2000.jar驱动,不支持mssql2005 和 mssql2008的原因。改成最新的版本后,就解决了。提一句的是最新的Sprinta.jar(7.40版)是收费的,默认只开了二个数据连接池。呵 呵,准备自己把它破解了的,虽然查到了他控制连接池数量的代码,可惜反编译Sprinta.jar 的class文件并不完美。又准备用javassist来直接用暴力修改class,终归功底太差。时间又急,就没动那心思。换成jtds- 1.2.2.jar(支持mssql2000 和 mssql2005)虽然官网上并没说支持mssql2008,从我使用的情况上来看。很正常,没有什么不方便的地方。所以就用jtds了。问题也解决 了。
查了一下,应该是连接类的问题,正在解决,好了更新上来,同时看到这篇文章的朋友,如果有这方面的经验的请,也请给我留言啊。谢谢了。

分享到:
评论

相关推荐

    JDK_API_1.6_zh_中文

    JDK_API_1.6_zh_中文JDK_API_1.6_zh_中文JDK_API_1.6_zh_中文JDK_API_1.6_zh_中文JDK_API_1.6_zh_中文JDK_API_1.6_zh_中文

    JDK_API_1.6_中文版本CHM

    《JDK_API_1.6_中文版本CHM》是一个针对Java开发人员极其重要的参考资料,它包含了Java Development Kit(JDK)1.6版本的官方API文档,且以中文的形式呈现,便于中国开发者理解和使用。这个CHM文件是离线版的API文档...

    中文 高清完整CHM版JDK_1.6_API_zh_CN.CHM

    《JDK 1.6 API 中文开发文档详解》 JDK 1.6,也称为Java Development Kit的第1.6版本,是Java编程语言的重要里程碑,它为开发者提供了丰富的工具和接口,以实现高效、稳定且跨平台的软件开发。这个版本的API中文...

    JDK_API_1.6.CHM 中文版

    **JDK_API_1.6.CHM 中文版** 是Java开发者的重要参考资料,它包含了Java Development Kit (JDK) 1.6版本的所有公开API的详细文档。这个CHM(Compiled Help Manual)文件是Windows平台下的帮助文件格式,提供了一个...

    jdk_1.6_x64_windows_官方正式_压缩版

    本文件源自oracle官方网站,jdk1.6最终版本6u45,安装后打包的 环境变量配置: 计算机(右键)-属性-高级系统设置-环境变量 1.新建系统变量 : JAVA_HOME C:\Program Files (x86)\Java\jdk1.6.0_45(你的JDK安装路径...

    JDK_1.6_中文API

    《JDK 1.6 中文API详解》 在Java编程世界中,JDK(Java Development Kit)是开发和运行Java应用程序的基础。JDK 1.6版本是Oracle公司发布的一个重要版本,它包含了编译器、Java运行时环境、各种Java工具以及Java ...

    JDK_API_1_6_zh_CN.zip_api1_java api1.6_jdk api 1.6_jdk api1_jdk

    《JDK API 1.6:Java开发的关键指南》 在Java编程的世界中,JDK(Java Development Kit)是开发者的重要工具,它包含了编写、编译、调试Java应用程序所需的所有组件。而API(Application Programming Interface)是...

    jre1.6_45与jdk1.6_45安装文件

    Java开发工具包(Java Development Kit,简称JDK)和Java运行环境(Java Runtime Environment,简称JRE)是Java编程的基础,对于任何想要在Java平台上进行开发或运行Java应用程序的用户来说,它们都是必不可少的组件...

    苹果电脑安装jdk1.6 mac for jdk1.6 jdk6 安装版

    mac for jdk1.6 jdk6 安装版 里面有两个jdk1.6的安装包,都可以用 如果电脑上安装有1.7,1.8等高版本jdk就不要再下安装包了,安装包安装会报错 命令是这个:brew install java6或 brew install homebrew/cask-...

    JDK_API_1.6 源码文档.chm

    JDK_API_1.6 源码文档.chm...................................................................................................................

    0JDK1.6 API帮助文档_jdk1.6_

    《JDK1.6 API帮助文档》是Java开发者不可或缺的重要参考资料,它详尽地记录了JDK1.6版本中的所有类、接口、方法和异常等核心组件,为程序员提供了全面而深入的API使用指南。这份文档对于理解和利用Java 1.6版本的...

    JDK_API_1.6

    **JDK API 1.6 知识点详解** JDK (Java Development Kit) 是Java编程语言的核心组件,它包含了开发和运行Java应用程序所需的工具和Java运行环境。JDK 1.6是Oracle公司发布的Java SE(标准版)的一个版本,它的全称...

    JDK_API_1.6中文版

    **JDK_API_1.6中文版** JDK (Java Development Kit) 是Oracle公司发布的用于开发和运行Java应用程序的工具集。JDK 1.6是Java平台的一个重要版本,包含了Java SE(标准版)的核心组件。这个版本的API中文版为开发者...

    JAVA帮助文档全系列_JDK1.5_、JDK1.6、_JDK1.7_官方中英完整版下载

    ### JAVA帮助文档全系列_JDK1.5_、JDK1.6、_JDK1.7_官方中英完整版下载 #### 概述 本文档提供了JDK(Java Development Kit)不同版本的下载链接及其相关介绍。JDK作为Java开发的核心组件,对于Java程序员来说至关...

    IBM JDK1.6 安装版

    IBM JDK1.6 安装版

    JDK_API_1.6.rar_JDK_API_1.6

    **JDK API 1.6 是Java开发的重要参考资料** JDK API 1.6是Java Development Kit的一个版本,其中包含了Java编程语言的核心类库和接口的详细文档。这个API文档对于任何想要学习或深入理解Java的开发者来说都是至关...

    JDK_API_1_6_zh_CN.rar_java jdk 1.6 A_java jdk api_jdk 1.6 API zh

    《Java JDK 1.6 API 中文文档解析》 Java JDK 1.6 API文档是Java开发者的重要参考资料,它详细地介绍了JDK 1.6版本中的类、接口、方法和异常,为开发者提供了全面而深入的编程指南。这份中文版的API文档,对于中文...

    JDK1.6_API_中文版

    **JDK 1.6 API 中文版**是Java开发者的重要参考资料,它包含了JDK 1.6版本的所有公开的类、接口、方法和异常等编程元素的详细文档。这个API文档以中文呈现,便于中国开发者理解和使用Java平台标准版(Java SE)1.6中...

    64位的jdk1.6_45 for Windows

    该资源是jdk1.6(也加Java6)里的最后一个版本:jdk1.6.45和jre1.6.45,适用于64位的Windows。 1.打开我的电脑--属性--高级--环境变量 2.新建系统变量JAVA_HOME 和CLASSPATH 变量名:JAVA_HOME 变量值:F:\Program ...

Global site tag (gtag.js) - Google Analytics