Jdbc JT400.jar禁用登录屏幕
有人能帮我吗?我有一个小型实用程序应用程序,它使用Jt400-6.7.jar连接到AS400服务器 请参阅以下代码Jdbc JT400.jar禁用登录屏幕,jdbc,jt400,Jdbc,Jt400,有人能帮我吗?我有一个小型实用程序应用程序,它使用Jt400-6.7.jar连接到AS400服务器 请参阅以下代码 private Connection buildConnection(String url, String userName, String password) throws ClassNotFoundException, SQLException { Connection connection = null; Class.
private Connection buildConnection(String url, String userName, String password) throws ClassNotFoundException,
SQLException {
Connection connection = null;
Class.forName("com.ibm.as400.access.AS400JDBCDriver");
DriverManager.setLoginTimeout(10000);
//OVER HERE!!!
connection = DriverManager.getConnection(url, userName, password);
return connection;
}
上面的代码可以工作,但如果用户名或密码错误,应用程序将创建以下登录屏幕。执行DriverManager.getConnection()时会发生这种情况
无法发布图片,但它看起来像这样
Signon to the system X
System: AS400Server
User ID: User ID
Password: ********
O Default User ID
O Save Password
OK Cancel
有人能告诉我如何禁用此功能吗?禁用此功能的一种方法是设置JVM属性com.ibm.as400.access.as400.guiAvailable=false 在java命令行中,您可以使用java-Dcom.ibm.as400.access.as400.guiAvailable=false来设置它 下面是一个使用jt400.jar中包含的jdbc客户机的示例
C:\>java -cp jt400.jar -Dcom.ibm.as400.access.AS400.guiAvailable=false com.ibm.as400.access.jdbcClient.Main jdbc:as400:/SYSTEM
Warning: Unable to connect to jdbc:as400:/SYSTEM using null
CON is not defined
禁用此功能的第二种方法是使用prompt=false connection属性。比如说
C:\jtopen_build\dist6>java -cp jt400.jar com.ibm.as400.access.jdbcClient.Main jdbc:as400:/SYSTEM;prompt=false
Warning: Unable to connect to jdbc:as400:/SYSTEM;prompt=false using null
CON is not defined
防止GUI密码提示的另一种方法
AS400.setPasswordExpirationWarningDays(-1);
Properties properties = new Properties();
properties.put("extended metadata", "true");
properties.put("user", userProfile);
properties.put("password", password);
properties.put("driver", "native");
properties.put("prompt", "false");
DriverManager.registerDriver(new com.ibm.as400.access.AS400JDBCDriver());
Connection connection = DriverManager.getConnection("jdbc:as400://somedomain.com", properties);
另外,当从java调用RPG程序时,会出现相同的登录弹出窗口 您还可以在定义数据源时进行设置:
final AS400JDBCDataSource dataSourceISeries = new AS400JDBCDataSource();
dataSourceISeries.setDatabaseName(...);
dataSourceISeries.setUser(...);
...
dataSourceISeries.setPrompt(false);
嗨,很抱歉,迟来的回复是我这边的一个周末。无论如何,我用上面的示例代码给驱动程序打电话。无论如何,我都可以使用上面的代码传递这些参数。对不起,我的无知…只需添加一行。。。url+=“提示=false”。。。之前connection=DriverManager.getConnection