|
The exception is thrown by Toolbox code trying to connect to the AS/400.
Check the following to help figure out why the connection is failing:
Are the host servers started?
Is profile QUser enabled?
Is the connection between your client and the AS/400 good? A good way
to test this is to run cwbping from a PC with CA/400, or get JPing from
JTOpen 2.02
Does turning the JIT off help?
If you cut out just the JDBC stuff and run it as a command line program
using either the SUN or IBM JDK, does it work?
You are right that this is simple JDBC and it should work. I did the last
item. I cut your JDBC logic and ran it as a stand alone program using
IBM's JDK 1.3 and it worked for me.
David Wall
AS/400 Toolbox for Java
"Steve Swett" <swett@bcswebsite.com>@midrange.com on 03/09/2001 06:51:13 AM
Please respond to JAVA400-L@midrange.com
Sent by: owner-java400-l@midrange.com
To: "Java 400 Mailing List" <JAVA400-L@midrange.com>
cc:
Subject: SQLException 9999:9999 getConnection - stack trace & complete
program
This short java application uses Toolbox for Java to use JDBC and SQL to
read in a result set and then load the first result set record into a
combobox. Very easy -- just to test AS/400 db connectivity. Surprisingly,
it won't work. Here's the stack trace and complete source code. Any
ideas?
I'm using: OS/400 V4R4, the jt400.zip file that comes with Client Access
V4R4M0 service level SF60796, and JBuilder4 IDE. I'm using the JRE that is
supplied with JBuilder4 (from the c:\jbuilder4\jdk1.3\bin folder).
Steve's note: * SQL Exception occurred error is 9999:9999 string is
java.sql.SQLException: 9999:9999 *
java.sql.SQLException: 9999:9999
at com.ibm.as400.access.JDError.throwSQLException(JDError.java:324)
at
com.ibm.as400.access.AS400JDBCConnection.open(AS400JDBCConnection.java:1070)
at
com.ibm.as400.access.AS400JDBCConnection.<init>(AS400JDBCConnection.java:244
)
at com.ibm.as400.access.AS400JDBCDriver.connect(AS400JDBCDriver.java:221)
at java.sql.DriverManager.getConnection(DriverManager.java:517)
at java.sql.DriverManager.getConnection(DriverManager.java:177)
at
test400db.test400dbFrame.jButton1_actionPerformed(test400dbFrame.java:58)
at test400db.test400dbFrame$1.actionPerformed(test400dbFrame.java:30)
at
javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1450)
at
javax.swing.AbstractButton$ForwardActionEvents.actionPerformed(AbstractButto
n.java:1504)
at
javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:3
78)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:250)
at
javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener
.java:216)
at java.awt.Component.processMouseEvent(Component.java:3717)
at java.awt.Component.processEvent(Component.java:3546)
at java.awt.Container.processEvent(Container.java:1164)
at java.awt.Component.dispatchEventImpl(Component.java:2595)
at java.awt.Container.dispatchEventImpl(Container.java:1213)
at java.awt.Component.dispatchEvent(Component.java:2499)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:2451)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:2216)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:2125)
at java.awt.Container.dispatchEventImpl(Container.java:1200)
at java.awt.Window.dispatchEventImpl(Window.java:912)
at java.awt.Component.dispatchEvent(Component.java:2499)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:319)
at java.awt.EventDispatchThread.pumpOneEvent(EventDispatchThread.java:103)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:93)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:84)
package test400db;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;
import java.sql.*;
import com.ibm.as400.access.*;
public class test400dbFrame extends JFrame {
JPanel contentPane;
JButton jButton1 = new JButton();
JComboBox jComboBox1 = new JComboBox();
/**Construct the frame*/
public test400dbFrame() {
enableEvents(AWTEvent.WINDOW_EVENT_MASK);
try {
jbInit();
}
catch(Exception e) {
e.printStackTrace();
}
}
/**Component initialization*/
private void jbInit() throws Exception {
jButton1.setText("Connect & Load");
jButton1.setBounds(new Rectangle(13, 17, 162, 36));
jButton1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(ActionEvent e) {
jButton1_actionPerformed(e);
}
});
//setIconImage(Toolkit.getDefaultToolkit
().createImage(test400dbFrame.class.
getResource("[Your Icon]")));
contentPane = (JPanel) this.getContentPane();
contentPane.setLayout(null);
this.setSize(new Dimension(400, 300));
this.setTitle("Test of AS/400 Database Connections");
jComboBox1.setBounds(new Rectangle(12, 72, 164, 38));
contentPane.add(jButton1, null);
contentPane.add(jComboBox1, null);
}
/**Overridden so we can exit when window is closed*/
protected void processWindowEvent(WindowEvent e) {
super.processWindowEvent(e);
if (e.getID() == WindowEvent.WINDOW_CLOSING) {
System.exit(0);
}
}
void jButton1_actionPerformed(ActionEvent e) {
try {
// Register AS/400 JDBC Driver:
DriverManager.registerDriver (new AS400JDBCDriver ());
// Connect to AS/400:
Connection c = DriverManager.getConnection(
"jdbc:as400://myas400;naming=sql;errors=full",
"myuser",
"mypwd");
// Run a query to load a result set:
// First create an SQL statement:
Statement s = c.createStatement(ResultSet.TYPE_SCROLL_INSENSITIVE,
ResultSet.CONCUR_READ_ONLY);
// Then execute a statement:
ResultSet rs = s.executeQuery (
"SELECT STDNAM FROM BCSSTUDENT.PAOSSTU WHERE STDCLS = '11' ORDER BY
STDNAM");
// Then loop through ResultSet records to load combo box:
// For now, just load first student so we don't have to wait.
rs.first();
jComboBox1.addItem(rs.getString("STDNAM"));
// Close the statement and disconnect:
s.close();
c.close();
} // try
catch (SQLException sqle) {
System.out.println("Steve's note: * SQL Exception occurred" +
" error is " + sqle.getMessage() + " string is " +
sqle.toString() + " * " );
sqle.printStackTrace();
} // catch
}
}
+---
| This is the JAVA/400 Mailing List!
| To submit a new message, send your mail to JAVA400-L@midrange.com.
| To subscribe to this list send email to JAVA400-L-SUB@midrange.com.
| To unsubscribe from this list send email to JAVA400-L-UNSUB@midrange.com.
| Questions should be directed to the list owner: joe@zappie.net
+---
+---
| This is the JAVA/400 Mailing List!
| To submit a new message, send your mail to JAVA400-L@midrange.com.
| To subscribe to this list send email to JAVA400-L-SUB@midrange.com.
| To unsubscribe from this list send email to JAVA400-L-UNSUB@midrange.com.
| Questions should be directed to the list owner: joe@zappie.net
+---
As an Amazon Associate we earn from qualifying purchases.
This mailing list archive is Copyright 1997-2025 by midrange.com and David Gibbs as a compilation work. Use of the archive is restricted to research of a business or technical nature. Any other uses are prohibited. Full details are available on our policy page. If you have questions about this, please contact [javascript protected email address].
Operating expenses for this site are earned using the Amazon Associate program and Google Adsense.