  | Mailing List | | Home | | Forum Home | | JBoss - Java Application Server | | Struts - A MVC web framework | | Tomcat - JSP/Servlet container | | iText - An open source PDF Java Library | | JDOM - JDOM XML Parser | | J2EE - A mailing list for Java(tm) 2 Platform, Enterprise Edition | | J2EE Pattern - An interest list for Sun Java Center J2EE Pattern Catalog | | Servlet - A mailing list for discussion about Sun Microsystem's Java Servlet API Technology | | JSP - A mailing list about Java Server Pages specification and reference | |
Struts & Hibernate
|
|
|
  | | | Websphere datasource giving security error from simple java app | Websphere datasource giving security error from simple java app 2004-03-10 - By Ashutosh Bhardwaj
Back The code follows :
import java.util.Hashtable ;
import javax.naming.Context ; import javax.naming.InitialContext ; import javax.sql.DataSource ;
public class DSTest {
public static void main(String[] args) { try { // // Hashtable jndiProperties = new Hashtable(); // jndiProperties.put(Context.INITIAL_CONTEXT_FACTORY, "com.ibm.websphere.naming.WsnInitialContextFactory"); System.setProperty("java.naming.factory.initial", "com.ibm.websphere.naming.WsnInitialContextFactory"); System.setProperty("java.naming.provider.url", "IIOP://localhost:2809/");
// jndiProperties.put(Context.PROVIDER_URL, "iiop://localhost:2809"); Context initialContext = new InitialContext();
Hashtable ht = initialContext.getEnvironment(); System.out.println(ht.toString()); Context context = new InitialContext();
System.out.println(context.lookup("jdbc/owd_ds_tx")); DataSource ds = (DataSource) context.lookup("jdbc/ds_tx");
} catch (Exception e) { e.printStackTrace(); }
}
}
And then the error :
{com.ibm.websphere.naming.hostname.normalizer=com.ibm.ws.naming.util.Default HostnameNormalizer, java.naming.factory.initial=com.ibm.websphere.naming.WsnInitialContextFactor y, com.ibm.websphere.naming.name.syntax=jndi, com.ibm.websphere.naming.namespace.connection=lazy, com.ibm.ws.naming.ldap.ldapinitctxfactory=com.sun.jndi.ldap.LdapCtxFactory, com.ibm.websphere.naming.jndicache.cacheobject=populated, com.ibm.websphere.naming.namespaceroot=defaultroot, com.ibm.ws.naming.implementation=WsnIpCos, com.ibm.ws.naming.provider.url=corbaname:iiop:1.0@(protected):2809/NameServ ice#, com.ibm.ws.naming.wsn.factory.initial=com.ibm.ws.naming.util.WsnInitCtxFacto ry, com.ibm.websphere.naming.jndicache.maxcachelife=0, com.ibm.websphere.naming.jndicache.maxentrylife=0, com.ibm.websphere.naming.jndicache.cachename=providerURL, java.naming.provider.url=IIOP://localhost:2809/, java.naming.factory.url.pkgs=com.ibm.ws.naming} com.ibm.websphere.naming.CannotInstantiateObjectException: Exception occurred while the JNDI NamingManager was processing a javax.naming.Reference object. Root exception is java.lang.Exception : Failed security check. Client is not permitted to create connection factory jdbc/ds_tx at com.ibm.ejs.j2c.ConnectionFactoryBuilderImpl.createMCFandPM(ConnectionFactor yBuilderImpl.java:1566) at com.ibm.ejs.j2c.ConnectionFactoryBuilderImpl.getObjectInstance(ConnectionFac toryBuilderImpl.java:1188) at javax.naming.spi.NamingManager (NamingManager.java:313) at com.ibm.ws.naming.util.Helpers.processSerializedObjectForLookup(Helpers.java :884) at com.ibm.ws.naming.jndicos.CNContextImpl.processResolveResults(CNContextImpl. java:1762) at com.ibm.ws.naming.jndicos.CNContextImpl.doLookup(CNContextImpl.java:1615) at com.ibm.ws.naming.jndicos.CNContextImpl.doLookup(CNContextImpl.java:1525) at com.ibm.ws.naming.jndicos.CNContextImpl.lookup(CNContextImpl.java:1225) at com.ibm.ws.naming.util.WsnInitCtx.lookup(WsnInitCtx.java:132) at javax.naming.InitialContext (InitialContext.java:359) at OWDDSTest.main(OWDDSTest.java:36)
Here are the jars :
J2ee.jar,j2cimpl.jar,namingclient.jar,namingserver.jar,naming.jar,ecutils.ja r,implfactory.jar.
Any solutions .
Regards, ashutosh
=========================================================================== To unsubscribe, send email to listserv@(protected) and include in the body of the message "signoff J2EE-INTEREST". For general help, send email to listserv@(protected) and include in the body of the message "help".
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN"> <HTML> <HEAD> <META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=us-ascii"> <META NAME="Generator" CONTENT="MS Exchange Server version 5.5.2653.12"> <TITLE>Websphere datasource giving security error from simple java app</TITLE> </HEAD> <BODY>
<P><FONT SIZE=2>The code follows :</FONT> </P>
<P><FONT SIZE=2>import java.util.Hashtable ;</FONT> </P>
<P><FONT SIZE=2>import javax.naming.Context ;</FONT> <BR><FONT SIZE=2>import javax.naming.InitialContext ;</FONT> <BR><FONT SIZE=2>import javax.sql.DataSource ;</FONT> </P>
<P><FONT SIZE=2>public class DSTest {</FONT> </P>
<P> <FONT SIZE=2>public static void main(String[] args) {</FONT> <BR> <FONT SIZE=2>try {</FONT> <BR><FONT SIZE=2>//</FONT> <BR><FONT SIZE=2>//   ;   ; Hashtable jndiProperties = new Hashtable();</FONT> <BR><FONT SIZE=2>//   ; jndiProperties .put(Context.INITIAL_CONTEXT_FACTORY, "com.ibm.websphere.naming .WsnInitialContextFactory");</FONT></P>
<P> <FONT SIZE=2>System .setProperty("java.naming.factory.initial", "com.ibm.websphere .naming.WsnInitialContextFactory");</FONT></P>
<P> <FONT SIZE=2>System .setProperty("java.naming.provider.url", "IIOP://localhost:2809/ ");</FONT> </P>
<P><FONT SIZE=2>// jndiProperties.put (Context.PROVIDER_URL, "iiop://localhost:2809");</FONT> <BR> <FONT SIZE=2>Context initialContext = new InitialContext();</FONT> </P>
<P> <FONT SIZE=2>Hashtable ht = initialContext.getEnvironment();</FONT> <BR> <FONT SIZE=2>System.out .println(ht.toString());</FONT> <BR> <FONT SIZE=2>Context context = new InitialContext();</FONT> <BR> <FONT SIZE=2>System.out .println(context.lookup("jdbc/owd_ds_tx"));</FONT> <BR> <FONT SIZE=2>DataSource ds = (DataSource) context.lookup("jdbc/ds_tx");</FONT> </P>
<P> <BR> <FONT SIZE=2>} catch (Exception e) {</FONT> <BR> <FONT SIZE=2>e .printStackTrace();</FONT> <BR> <FONT SIZE=2>}</FONT> </P>
<P> <FONT SIZE=2>}</FONT> </P>
<P><FONT SIZE=2>}</FONT> </P>
<P><FONT SIZE=2>And then the error :</FONT> </P> <BR>
<P><FONT SIZE=2>{com.ibm.websphere.naming.hostname.normalizer=com.ibm.ws.naming .util.DefaultHostnameNormalizer, java.naming.factory.initial=com.ibm.websphere .naming.WsnInitialContextFactory, com.ibm.websphere.naming.name.syntax=jndi, com .ibm.websphere.naming.namespace.connection=lazy, com.ibm.ws.naming.ldap .ldapinitctxfactory=com.sun.jndi.ldap.LdapCtxFactory, com.ibm.websphere.naming .jndicache.cacheobject=populated, com.ibm.websphere.naming.namespaceroot =defaultroot, com.ibm.ws.naming.implementation=WsnIpCos, com.ibm.ws.naming .provider.url=corbaname:iiop:1.0@(protected):2809/NameService#, com.ibm.ws .naming.wsn.factory.initial=com.ibm.ws.naming.util.WsnInitCtxFactory, com.ibm .websphere.naming.jndicache.maxcachelife=0, com.ibm.websphere.naming.jndicache .maxentrylife=0, com.ibm.websphere.naming.jndicache.cachename=providerURL, java .naming.provider.url=IIOP://localhost:2809/, java.naming.factory.url.pkgs=com .ibm.ws.naming}</FONT></P>
<P><FONT SIZE=2>com.ibm.websphere.naming.CannotInstantiateObjectException: Exception occurred while the JNDI NamingManager was processing a javax.naming .Reference object. Root exception is java.lang.Exception : Failed security check. Client is not permitted to create connection factory jdbc/ds_tx< /FONT></P>
<P> <FONT SIZE=2>at com.ibm.ejs.j2c .ConnectionFactoryBuilderImpl.createMCFandPM(ConnectionFactoryBuilderImpl.java :1566)</FONT> <BR> <FONT SIZE=2>at com.ibm.ejs.j2c .ConnectionFactoryBuilderImpl.getObjectInstance(ConnectionFactoryBuilderImpl .java:1188)</FONT> <BR> <FONT SIZE=2>at javax.naming.spi .NamingManager.getObjectInstance(NamingManager.java:313)</FONT> <BR> <FONT SIZE=2>at com.ibm.ws .naming.util.Helpers.processSerializedObjectForLookup(Helpers.java:884)</FONT> <BR> <FONT SIZE=2>at com.ibm.ws .naming.jndicos.CNContextImpl.processResolveResults(CNContextImpl.java:1762)< /FONT> <BR> <FONT SIZE=2>at com.ibm.ws .naming.jndicos.CNContextImpl.doLookup(CNContextImpl.java:1615)</FONT> <BR> <FONT SIZE=2>at com.ibm.ws .naming.jndicos.CNContextImpl.doLookup(CNContextImpl.java:1525)</FONT> <BR> <FONT SIZE=2>at com.ibm.ws .naming.jndicos.CNContextImpl.lookup(CNContextImpl.java:1225)</FONT> <BR> <FONT SIZE=2>at com.ibm.ws .naming.util.WsnInitCtx.lookup(WsnInitCtx.java:132)</FONT> <BR> <FONT SIZE=2>at javax.naming .InitialContext.lookup(InitialContext.java:359)</FONT> <BR> <FONT SIZE=2>at OWDDSTest.main (OWDDSTest.java:36)</FONT> </P> <BR>
<P><FONT SIZE=2>Here are the jars :</FONT> </P>
<P><FONT SIZE=2>J2ee.jar,j2cimpl.jar,namingclient.jar,namingserver.jar,naming .jar,ecutils.jar,implfactory.jar.</FONT> </P> <BR> <BR>
<P><FONT SIZE=2>Any solutions .</FONT> </P>
<P><FONT SIZE=2>Regards,</FONT> <BR><FONT SIZE=2>ashutosh</FONT> </P>
</BODY> </HTML> =========================================================================== To unsubscribe, send email to listserv@(protected) and include in the body of the message "signoff J2EE-INTEREST". For general help, send email to listserv@(protected) and include in the body of the message "help". <p>
|
|
 |