将Java Web 应用部署至 WebSphere 7

因为项目最终需要被部署至IBM WebSphere上,而且以前都没有接触过WebSphere,所以先写一个测试例子练练手。在网上找了很多文档,折腾了一下午,才把项目部署上去,有很多文档写得并不全,所以整理一份出来,希望能帮助到一些朋友!

WebSphere 7 的安装过程我就不说了。基本上是默认配置。

紧接着是你的JavaWeb应用的web.xml需要添加如下配置:

<resource-ref>
    <res-ref-name>jdbc/testds</res-ref-name>   //Resource JNDI名称
    <res-type>javax.sql.DataSource</res-type> Resource所属的java类
    <res-auth>Container</res-auth>  Resource由什么创建 container表示由容器创建  application表示web应用创建
</resource-ref>

进入控制台后,找到“资源 - JDBC - JDBC提供程序”,新建一个JDBC提供程序:(此处我使用的是DB2数据库)

 

图像 1

图像 2

然后下一步 - 完成。 就完成了JDBC提供程序的创建(记得点保存)。接着点击“数据源”菜单创建WebSphere数据源:

图像 4

 图像 5

 

图像 6

图像 7

图像 8

图像 9

图像 11

 

然后点击下一步-完成。就完成了数据源的创建(记得点保存)。然后选中该数据源,点击“测试连接”按钮后如出现下图,则表示数据源配置成功

图像 23

重启websphere,紧接着点击新建应用程序 - 新建企业应用程序菜单后,如下图:

图像 12 (此处选择你打包的Java Web应用程序,下一步)

图像 13 (下一步)

 

图像 15

图像 16

图像 19(下一步)

图像 20 (下一步)

查看摘要信息,下一步 - 完成创建WebSphere应用程序。

 

图像 21

点击“应用程序类型 - WebSphere企业应用程序”,查看应用程序列表

图像 25

点击应用名,设置“Web模板的上下文根”

图像 24

然后启动应用程序

图像 22

 

 

 

至此,WebSphere Java Web应用创建完成,输入http://ip:port(默认:8090)/your_webappName访问即可

另外,配置了WebSphere数据源以并绑定J2C认证后,Java获得Websphere数据源连接的代码如下:

package com.topstar.xiaowu.test;

import java.sql.Connection;
import java.sql.PreparedStatement;
import java.sql.ResultSet;
import java.sql.SQLException;

import javax.naming.Context;
import javax.naming.InitialContext;
import javax.naming.NamingException;
import javax.sql.DataSource;

public class DBTest {
	private static Context context;
	private static DataSource wasDatasource;

	static {

		try {
			context = new InitialContext();
			wasDatasource = (DataSource) context.lookup("jdbc/wasds"); //配置的数据源连接
		} catch (NamingException e) {
			e.printStackTrace();
		}
	}

	public static Connection getConnection() {
		try {
			return wasDatasource.getConnection();
		} catch (SQLException e) {
			e.printStackTrace();
		}
		return null;
	}

	public static void close(Connection cn, ResultSet rs, PreparedStatement ps) {
		if (null != rs) {
			try {
				rs.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
			rs = null;
		}

		if (null != ps) {
			try {
				ps.close();
			} catch (SQLException e) {
				e.printStackTrace();
			}
			ps = null;
		}

		try {
			if (null != cn && !cn.isClosed()) {
				cn.close();
				cn = null;
			}
		} catch (SQLException e) {
			e.printStackTrace();
		}
	}
}

WebSphere应用日志输出在%{washome}\profiles\AppSrv01\logs\server1\SystemOut.log中。

posted @ 2011-12-01 21:35  LittleNewbie  Views(9183)  Comments(1Edit  收藏  举报