× The internal search function is temporarily non-functional. The current search engine is no longer viable and we are researching alternatives.
As a stop gap measure, we are using Google's custom search engine service.
If you know of an easy to use, open source, search engine ... please contact support@midrange.com.



Hi,

i am not quite sure that this is a connection pool problem.
It seems to be an underlying Authentication problem where
Kerberos seems to be used. I would focus on authentication
of the AS400 object when trying to find the real problem.


> I'm encountering a AccessControlException while trying to use a
> AS400JDBCConnectionPool from within Tomcat 4.1 on our V5R1 system with
> JDK 1.4.

> The connection pool is being constructed like this ...

> =============
> AS400JDBCConnectionPoolDataSource source =
>       new AS400JDBCConnectionPoolDataSource("localhost",
>               "*CURRENT", "*CURRENT");
> source.setLibraries("*LIBL");
> AS400JDBCConnectionPool pool = new AS400JDBCConnectionPool(source);
> =============

> This seems to work fine when I'm running Tomcat on my workstation
> (obviously not using localhost, *current, and *libl), but when I try to
> run on the iSeries I get the following exception.

> =============
> java.security.AccessControlException: access denied
> (java.io.FilePermission
> /QIBM/ProdData/Java400/jdk14/lib/security/krb5.conf read)
>          at java/lang/Throwable.<init>(Throwable.java:195)
>          at java/lang/Exception.<init>(Exception.java:41)
>          at java/lang/RuntimeException.<init>(RuntimeException.java:43)
>          at java/lang/SecurityException.<init>(SecurityException.java:32)
>          at
> java/security/AccessControlContext.checkPermission(AccessControlContext.ja
> va:270)

>          at
> java/security/AccessController.checkPermission(AccessController.java:401)

>          at
> java/lang/SecurityManager.checkPermission(SecurityManager.java:524)
>          at java/lang/SecurityManager.checkRead(SecurityManager.java:863)
>          at java/io/File.exists(File.java:685)
>          at com/ibm/security/krb5/internal/Config.b(Config.java:390)
>          at com/ibm/security/krb5/internal/Config.a(Config.java:325)
>          at com/ibm/security/krb5/internal/Config.<init>(Config.java:311)
>          at com/ibm/security/jgss/mech/krb5/j.b(j.java:107)
>          at com/ibm/security/jgss/mech/krb5/j.a(j.java:72)
>          at com/ibm/security/jgss/mech/krb5/j.<init>(j.java:3)
>          at
> com/ibm/security/jgss/mech/krb5/Krb5MechFactory.getNameElement(Krb5MechFac
> tory.java:43)

>          at
> com/ibm/security/jgss/GSSManagerImpl.a(GSSManagerImpl.java:30)
>          a
> com/ibm/security/jgss/GSSNameImpl.canonicalize(GSSNameImpl.java:39)
>          at
> com/ibm/security/jgss/GSSManagerImpl.createName(GSSManagerImpl.java:52)
>          at
> com/ibm/as400/access/TokenManager.getGSSToken(TokenManager.java:27)
>          at com/ibm/as400/access/AS400.signon(AS400.java:3041)
>          at com/ibm/as400/access/AS400.connectService(AS400.java:759)
>          at
> com/ibm/as400/access/AS400JDBCConnection.setProperties(AS400JDBCConnection
> .java:2665)

>          at
> com/ibm/as400/access/AS400JDBCDataSource.getConnection(AS400JDBCDataSource
> .java:579)

>          at
> com/ibm/as400/access/AS400JDBCDataSource.getConnection(AS400JDBCDataSource
> .java:516)

>          at
> com/ibm/as400/access/AS400JDBCConnectionPool.createPooledConnection(AS400J
> DBCConnectionPool.java:262)

>          at
> com/ibm/as400/access/AS400JDBCConnectionPool.fill(AS400JDBCConnectionPool.
> java:279)

>          at
> com/ibm/as400/access/AS400JDBCConnectionPool.getConnection(AS400JDBCConnec
> tionPool.java:407)

>          at
> com/mks/implementer/server/ImplementerConnectionManager.getDatabaseConnect
> ion(ImplementerConnectionManager.java:95)

> <application code stack trace>
> =============

> I'm somewhat familiar with the catalina.policy file for tomcat ... but I
> can't figure out what JAR to add to allow access.

> I'm using JTOpen 4.0 for AS400 access.

> Any thoughts?

> Thanks!

> david


> --
> If you have an apple and I have an apple and we exchange apples then you
> and I will still each have one apple. But if you have an idea and I have
> an idea and we exchange these ideas, then each of us will have two ideas.

> - George Bernard Shaw
> _______________________________________________
> This is the Java Programming on and around the iSeries / AS400 (JAVA400-L)
> mailing list
> To post a message email: JAVA400-L@xxxxxxxxxxxx
> To subscribe, unsubscribe, or change list options,
> visit: http://lists.midrange.com/mailman/listinfo/java400-l
> or email: JAVA400-L-request@xxxxxxxxxxxx
> Before posting, please take a moment to review the archives
> at http://archive.midrange.com/java400-l.





As an Amazon Associate we earn from qualifying purchases.

This thread ...

Follow-Ups:
Replies:

Follow On AppleNews
Return to Archive home page | Return to MIDRANGE.COM home page

This mailing list archive is Copyright 1997-2024 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.