程序从Tomcat迁移至websphere的注意事项

 
   | |

导读:本文介绍了程序从Tomcat迁移至websphere时的注意事项,笔者根据自身的经验给出了具体的代码片段。

关键词:web应用服务器 websphere tomcat

 
正在加载数据...

    由于客户们使用的web应用服务器采用的软件不一,Tomcat5、Tomcat6、Websphere5.1、Websphere6.1、Weblogic8等等,而这些软件所采用的标准又不一致,IBM的WAS的JDK采用的自己的,痛苦的是开发人员。

  Tomcat下开发一般很少遇到什么问题,而且真正上线时,客户很少采用tomcat,一般都是WAS,这就需要把程序部署到WAS下。当然,很多不做实事的项目负责人会说这很简单(因为你没做过也不是你去做),而把这个工作放到开发完之后去转,但实际上,还是有很多地方要注意的,最好在开发前弄清楚,部署的时候会减少很多麻烦。

  下面把我的经验列一下:

  1、include的文件要注意: 复制内容到剪贴板

以下是引用片段:
<%@ page contentType="text/html; charset=UTF-8"%>

  这个在WAS5下不能被多次设置,include文件中如果有要去掉,不过WAS6.0以上就可以了。

  2、web.xml中的serlvet标准

  was5.1只支持2.3标准,was6.0以上才可以支持2.4,如果程序需要跨不同版本的应用服务器,最好采用2.3标准。

  2.3的开头设置如下: 复制内容到剪贴板

以下是引用片段:
<?xml version="1.0" encoding="UTF-8"?>
<!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>2.4的如下: 复制内容到剪贴板

以下是引用片段:
<?xml version="1.0" encoding="UTF-8"?>
<web-app xmlns="http://java.sun.com/xml/ns/j2ee"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="2.4"
xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee   http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd">

  如果你有用spring,那么你肯定比较喜欢如下的配置: 复制内容到剪贴板

以下是引用片段:
<listener>
  <listener-class>
   org.springframework.web.context.ContextLoaderListener
  </listener-class>
</listener>
<context-param>
  <param-name>contextConfigLocation</param-name>
  <param-value>
   /WEB-INF/classes/applicationContext*.xml
  </param-value>
</context-param>

  但是很遗憾的说,在2.3的标准下是不能用的,这个实在让我很郁闷,还好spring还提供一个servlet供初始化 复制内容到剪贴板

以下是引用片段:
<servlet>
  <servlet-name>SpringContextServlet</servlet-name>
  <servlet-class>
   org.springframework.web.context.ContextLoaderServlet
  </servlet-class>
  <load-on-startup>1</load-on-startup>

    </servlet>但是这样就不能设置contextConfigLocation参数了(或许有,是我还没找到),这样,如果配置文件有多个,比如:applicationContext-struts.xml,applicationContext-hibernate.xml等等,那么我就需要把他们合成一个文件,放到web-inf\applicationContext.xml,注意,不是web-inf\classes中。

    3.ajax调用的编码问题:

  如果你有用ajax去传一些中文,那么在从服务器端发往客户端时,你可能会用response.setCharacterEncoding("GBK"),来解决乱码问题,但是再次很遗憾的说,这个方法是不被支持的,你可以用:response.setContentType("text/xml;charset=GBK");来替代,我也推荐这种方式。另外,request.setCharacterEncoding方法还是可以用的。

  4.根据我的尝试,最好还是把servlet-api.jar包放进去,此包可以从tomcat里面找到

  5.绝对要使用jdk1.4标准去编译,不是要你使用1.4的jdk,只是把构建的标准改为1.4就可以了。

  如果编译不过去,那你就去老老实实改程序吧,不要去浪费时间想什么外门邪道,比如去更改was的jdk等等疯狂举动。

  所以,jdk5.0及以后版本中新增的一些新玩意,如果你不能确定客户使用的服务器软件支持的话,最好还是不要使用。

  6.不要写文件到服务器,否则在群集部署的时候就会有问题了。

原文出处:http://www.webspherechina.net/club/thread-1121-1-1.html
 
来源:websphere中国    作者:圆白菜    
 
 
 
 
 

IBM Web服务

 
上个月有很多关于BPM收购的新闻,最近聚光灯照耀在主数据管理(MDM)上。IBM宣布就收购Initiate Systems达成协议……
 
.NET到WebSphere的连接的新闻似乎比早些时候的Web服务更少地出现。但是对IBM的WebSphere eXtreme Scale服务器进行更新提供的就是一个连接。
 
IBM最近与松下电器签署了一项重要协议,即抛弃微软Exchange ,转向IBM的LotusLive协同SaaS产品。松下电器将为超过30万的员工部署LotusLive……
 
IBM在OSGi的行列中跳跃。上个月,该公司宣布的WebSphere Application Server V7 OSGi应用程序的阿尔法开放。这是对于OSGi……
 
IBM宣布IBM Mashup Center最新版本并且现提供新的服务:BM Cognos 8 Mashup Service。此外,IBM宣布一套新的客户端,它使用IBM Mashup……

热门技术手册排行

 

随着开源技术越来越成熟,一个稍有开发经验的人通过学习就可以用开源的产品和技术构建一套可用的系统。对于从事软件开发的人员,尤其是对Java或动态语言相关领域的人来说,“开源”也许是他们最喜爱的单词。但是,很多时候我们需要的不仅仅是一个可用的系统,而是希望这个系统开发更简易、性能更高和扩展性更好等。这确实是一个令人头痛的问题。本指南很多地方都是点到为止,要深入了解相关信息的读者请借助参考资料、网站等自行挖掘。

 

本专题分六部分探讨SOA设计模式,当初设计面向服务架构的一大初衷就是降低服务间耦合度,由此提高服务的灵活性和自由度。

 

业务流程管理(business process management,bpm)不是一个新概念,甚至不是一个新名词。它是从相关的业务流程变革领域,如业务流程改进(bpi)、业务流程重组(bpr)、业务流程革新中发展起来的。流程管理技术也是从早期的工作流管理、eai、流程自动化、流程集成、流程建模、流程优化等技术中发展起来的。

 

TOAGF是一个架构框架,简而言之,TOGAF是一种协助发展,验收,运行,使用,和维护架构的工具。它是基于一个迭代(Iterative)的过程模型,支持最佳实践和一套可重用的现有架构资产。

 

云计算的概念越来越流行,Amazon、Google和IBM是第一批将云计算引入公众视线的公司。云计算就是新的Web2.0,一种既有技术上的市场绽放。

 

Mashup是一个非常cool的新的应用程序种类。如果你想真正的了解它们,我们需要回过头来看看你现在的计算机,其实它就是一个非常好的帮助你理解mashup的模型。现在开源的操作系统无疑是非常好的apis的集合或应用程序编程接口,帮助开发者去构建其应用程序。计算机本身也是一个很好的为用户提供接口的例子,键盘和鼠标可以被理解为你通过计算机的接口而使用的不同的应用程序。本技术手册为读者提供了一些相关信息,如果需要深入了解mashup,读者可以借助其他参考资源。

查看更多
 
 

登录TechTarget中国

关闭
本服务仅向TechTarget中国的会员开放,请登录或立即免费注册
电子邮件地址:
请输入您的电子邮件地址
密码:
下次自动登录