Want to win a PS4? Go Premium and enter to win our High-Tech Treats giveaway. Enter to Win

x
?
Solved

Connect to DB2

Posted on 2002-05-23
10
Medium Priority
?
1,192 Views
Last Modified: 2008-03-06
In my Linux platform, I need to connect to a DB2 database under OS400 with JSP, could you give me a solution?
0
Comment
Question by:Yuanyu
[X]
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 4
  • 2
  • 2
  • +2
10 Comments
 
LVL 6

Accepted Solution

by:
kotan earned 2000 total points
ID: 7031173
There are 2 different JDBC drivers for the AS/400 database. Which one you want to use?

1. The "native" JDBC driver.
   This is shipped as part of the AS/400 Developer Kit for Java (57xxJV1). It is implemented by making native method calls to the SQL CLI (Call Level Interface). Consequently, it only runs on the AS/400 JVM.

2. The "Toolbox" JDBC driver
   This is shipped as part of the IBM Toolbox for Java (57xxJC1). It is implemented by making direct socket connections to the database host server. This happens to be the same route that the Client Access/400 ODBC driver takes. However, Client Access/400 is NOT required. The Toolbox runs on any JVM.


0
 
LVL 6

Expert Comment

by:kotan
ID: 7031178
0
 

Author Comment

by:Yuanyu
ID: 7031263
Does the second way means:
57xxJC1 is in the list LICPGM, we can connect to DB2/OS400 from Linux or Windows platform without any driver installion?  
0
Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

 
LVL 6

Expert Comment

by:kotan
ID: 7031312
yes! The driver is already included in IBM Toolbox.
0
 
LVL 92

Expert Comment

by:objects
ID: 7031406
One of IBM's red books may help you:

http://www.as400.ibm.com/developer/java/books.html
0
 

Author Comment

by:Yuanyu
ID: 7031451
OS/400 version is V4R2, can I use toolbox 57xxJC1?
0
 
LVL 6

Expert Comment

by:kotan
ID: 7031517
0
 
LVL 19

Expert Comment

by:cheekycj
ID: 7032701
once you have your jdbc driver downloaded.. include it in your servlet container's environment as a standard lib.

you can go here to find out how to use JDBC to connect to your DB:
http://www7b.boulder.ibm.com/dmdd/library/techarticle/0203zikopoulos/0203zikopoulos.html [overview on db2 and jdbc]

http://www-105.ibm.com/developerworks/education.nsf/java-onlinecourse-bytitle/5D92193F478974D386256B210044A302?OpenDocument [tutorial about using jdbc from a jsp to connect to a DB, registration is free]

http://www-106.ibm.com/developerworks/library/connecting-enterprise-data/enterprise-data.html [how to access db2 data using jdbc in java/jsp]

here is a redbook on it:
http://www.redbooks.ibm.com/redpieces/pdfs/sg246551.pdf

if you can't find the IBM Supplied JDBC driver here is an alternative one:
http://www.hitsw.com/support/dloadsqljdbc400top.htm

here is how to set up the IBM JDBC driver:
http://as400bks.rochester.ibm.com/pubs/html/as400/v5r1/ic2924/index.htm?info/rzaha/jdbc.htm
http://as400bks.rochester.ibm.com/pubs/html/as400/v5r1/ic2924/index.htm?info/rzaha/setupjdbc.htm

HTH,
CJ
0
 
LVL 19

Expert Comment

by:cheekycj
ID: 7075697
any luck?

CJ
0
 

Expert Comment

by:foongkim
ID: 7100256
Ok Yuanyu,

I think i am in a better positions to help cause I have just finished my project in JSP on DB2 and OS400. I think u need mor sample code other than looking around in the info center again.

First, I am using JSP and JavaBean to work. To gather info from user, I used JSP to capture user information, after that I used JavaBEan to do the connection. So, for your problems, u need to know how to connect right? Here your are :

********** connect.java ********

1 package com.wrox.cars;
2
3import java.sql.*;
4import java.util.*;
5
6public class Books {
7        String error;
8        Connection con;
9
10        public Books() { }
11
12        public void connect() throws ClassNotFoundException,
13                                     SQLException,
14                                     Exception {
15        try {
16           Class.forName("com.ibm.db2.jdbc.app.DB2Driver");
17           con = DriverManager.getConnection("jdbc:db2:*local");
18        } catch (ClassNotFoundException cnfe) {
19          error = ("ClassNotFoundException: Could Not Locate Db Driver");
20          throw new ClassNotFoundException(error);
21        } catch (SQLException cnfe) {
22          error = ("ClassNotFoundException : Could Not Connect to DB.");
23          throw new SQLException(error);
24        } catch (Exception e) {
25          error = ("Exception : An Unknown error occur.");
26          throw new Exception (error);
27        }
28      }
29
30
31        public void disconnect() throws SQLException {
32           try {
33                if ( con != null) {
34                     con.close();
35                   }
36                } catch (SQLException sqle) {
37                  error = ("SQLEXception : Unable to close the database.");
38                  throw new SQLException (error);
39                }
40              }
41
42
43        public ResultSet viewBooks() throws SQLException, Exception {
44                ResultSet rs = null;
45
46                try {
47                 String queryString =("SELECT TA1001, TA1021, TA1015 FROM lflib.jalf11 WHERE TA1014='C1'");
48                 Statement stmt = con.createStatement();
49                 rs = stmt.executeQuery(queryString);
50              } catch (SQLException sqle) {
51                        error = ("SQLException : Could not execute query");
52                        throw new SQLException (error);
53              } catch (Exception e) {
54                        error = ("Exception : An Unknown error occur.");
55                        throw new Exception (error);
56              }
57
58              return rs;
59       }
60
61       }


The bean above, as u see, quite clear right? 3 methods. One is doing the connection, which is include of all the driver, location of thedb etc... The second fucntions is disconnect, which u need to close all the connectivity to the db before u close the pages. The third one is the query part. U can put any type of SQL command here as long as it's a valid command.

OK??
Hope it's can help.

Oh yeah... regarding your 5722-JV1 or any other licienced programs. As long as it's in the INSTALLED or COMPATIBLE mode, it's can be used. And u no need to specific anythings in order for u to used. No need. U can straight away used this.

           
0

Featured Post

Concerto's Cloud Advisory Services

Want to avoid the missteps to gaining all the benefits of the cloud? Learn more about the different assessment options from our Cloud Advisory team.

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

With the evolution of technology, we have finally reached a point where it is possible to have home automation features like having your thermostat turn up and door lock itself when you leave, as well as a complete home security system. This is a st…
Tech spooks aren't just for those who are tech savvy, it also happens to those of us running a business. Check out the top tech spooks for business owners.
This tutorial will teach you the special effect of super speed similar to the fictional character Wally West aka "The Flash" After Shake : http://www.videocopilot.net/presets/after_shake/ All lightning effects with instructions : http://www.mediaf…
In this video, Percona Solution Engineer Rick Golba discuss how (and why) you implement high availability in a database environment. To discuss how Percona Consulting can help with your design and architecture needs for your database and infrastr…
Suggested Courses

610 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question