救命!!遇到一个axis程序移植到weblogic应用服务器下的错

loloautumn 2006-05-18 04:35:01
各位大侠,小弟在将axis提供的WebService移植到WebLogic应用服务器上后,在执行数据库插入操作时出现了以下错误:
Exception in thread "main" AxisFault
faultCode: {http://schemas.xmlsoap.org/soap/envelope/}Server.userException
faultSubcode:
faultString: java.lang.NullPointerException
faultActor:
faultNode:
faultDetail:
{http://xml.apache.org/axis/}hostname:loloautumn

java.lang.NullPointerException
。。。。
并且最奇怪的是该错误在执行第一次数据库插入操作时不会出现,但在进行后续的WebService invoke操作时就会报上面的错,且好像抱错的处罚原因是不能初始化soap消息??
小弟的数据库连接是通过WebLogic的连接池得到,这是进行数据库插入操作的源代码:
protected static boolean addUUID(Connection dbConn, String userID,
String UUID) {

boolean addResult = false;
Statement stmt;
try {
stmt = dbConn.createStatement();
String addUUIDSQL = "INSERT INTO NSBD.NSBDUUID (\"UUID\" ,\"USERID\" ) VALUES ('";
addUUIDSQL += UUID;
addUUIDSQL += "','";
addUUIDSQL += userID;
addUUIDSQL += "')";
System.out.println("%%%%%%%%%%%%%%%%%%%%%% " + addUUIDSQL);
stmt.executeUpdate(addUUIDSQL);
addResult = true;
} catch (SQLException e) {
e.printStackTrace();
// 插入异常处理
return false;
}
return addResult;
}

这是提供Webservice的方法,它调用了上面的插入操作:
protected static String validateUserIdentity(String userID, String password) {
// 调用数据库函数检查输入的用户名和密码是否是LDAP中的合法用户
boolean checkResult = DBFunction.validateUserIdentity(userID, password);
// 返回检查结果
if (checkResult) {
String UUID = generateUUID();
Connection conn = DBFunction.openConnection();
if (DBFunction.addUUID(conn, userID, UUID)) {
DBFunction.shutConnection(conn);
return UUID;
}
}
return null;
}

这是获得数据库连接的类:

public class PoolManager {
protected static PoolManager INSTANCE = new PoolManager();

private static Properties prop;

private static Driver myDriver;

protected PoolManager() {
SystemConfig config = SystemConfig.getInstance();

String dbDriver = config.getDbDriver();
String dbUserName = config.getDbUserName();
String dbPassword = config.getDbPassword();

Properties props = new Properties();
props.setProperty("user", dbUserName);
props.setProperty("password", dbPassword);
try {
myDriver = (Driver) Class.forName(dbDriver).newInstance();
} catch (ClassNotFoundException e) {
e.printStackTrace();
} catch (IllegalAccessException e) {
e.printStackTrace();
} catch (InstantiationException e) {
e.printStackTrace();
}
}

public static Connection getConnection() throws SQLException {

SystemConfig config = SystemConfig.getInstance();
String dbPoolName = config.getDbPoolname();
System.out.println("I Want To Get A Connection From WebLogic!!");
try {
Connection conn = myDriver.connect(dbPoolName, prop);
System.out.println("Get A Connection From WebLogic Successful!!");
return conn;
} catch (Exception E) {
System.err.println("Unable to load driver.");
E.printStackTrace();
return null;
}
}
}
该程序以前在tomcat下使用第三方的连接池poolman测过,没有问题,但在WebLogic下就不行了,不知为何~~~~请各位大虾们不吝赐教~~~~~~救人一命胜造七级浮屠阿~~~~~~
...全文
77 点赞 收藏 1
写回复
1 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
loloautumn 2006-05-19
晕,咋没人理呢,哪位好心的大侠帮帮偶吧>_<
回复
相关推荐
发帖
Java EE
创建于2007-09-28

6.6w+

社区成员

J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
申请成为版主
帖子事件
创建了帖子
2006-05-18 04:35
社区公告
暂无公告