Hello everybody.

   I can't find the solution of this problem on the web even if I saw many 
similar problems.

   First. I had problem using DatabaseServerLoginModule... with this error : 

  | javax.security.auth.login.LoginException: 
javax.naming.NoInitialContextException: Need to specify class name in 
environment or system property, or as an applet parameter, or in an application 
resource file:  java.naming.factory.initial at 
org.jboss.security.auth.spi.DatabaseServerLoginModule.getUsersPassword(DatabaseServerLoginModule.java:133)
 at 
org.jboss.security.auth.spi.UsernamePasswordLoginModule.login(UsernamePasswordLoginModule.java:182)

 I debuged it ... and found that the error is raised here : 
 /****** In jboss databaseserverloginmodule file ***** /
  |  protected String getUsersPassword() throws LoginException
  |  {    String username = getUsername();
  |        String password = null;
  |        Connection conn = null;
  |        PreparedStatement ps = null;
  |        try
  |        {     InitialContext ctx = new InitialContext();
  |           DataSource ds = (DataSource) ctx.lookup(dsJndiName);
  |          .....
  | 

The InitialContext() works well.

but the ctx.lookup(dsJndiName) raises the error.


So I tryed this easy code  : 

 
  |          Properties props = new Properties();
  |          props.put(Context.INITIAL_CONTEXT_FACTORY,
  |                    "org.jnp.interfaces.NamingContextFactory");
  |          props.put(Context.PROVIDER_URL, "jnp://localhost:1099");
  |          props.put(Context.URL_PKG_PREFIXES,
  |                    "org.jboss.naming:org.jnp.interfaces");
  |          InitialContext ctx = null;
  |         try {
  |             ctx = new InitialContext(props);
  |         } catch (NamingException ex2) {
  |             System.out.print("Error while InitialContext");
  |         }
  |         DataSource ds = null;
  |         try { 
  |               ds = (DataSource) ctx.lookup("java:TestDataSource");
  |         } catch (NamingException ex3) {
  |             System.out.println("Error while LOOKUP");
  |             ex3.printStackTrace();
  |         }
  | 

here is the message error : 

  | Error while LOOKUP
  | javax.naming.NameNotFoundException: TestDataSource not bound
  |     at org.jnp.server.NamingServer.getBinding(NamingServer.java:514)
  |     at org.jnp.server.NamingServer.getBinding(NamingServer.java:522)
  |     at org.jnp.server.NamingServer.getObject(NamingServer.java:528)
  |     at org.jnp.server.NamingServer.lookup(NamingServer.java:281)
  |     at sun.reflect.GeneratedMethodAccessor72.invoke(Unknown Source)
  |     at 
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
  |     at java.lang.reflect.Method.invoke(Method.java:585)
  | ...


My configuration : 


  | =========================================================================
  | 
  |   JBoss Bootstrap Environment
  | 
  |   JBOSS_HOME: /usr/local/jboss-4.0.3SP1
  | 
  |   JAVA: /usr/java/jdk1.5.0_06//bin/java
  | 
  |   JAVA_OPTS: -server -Xms128m -Xmx128m -Dprogram.name=run.sh
  | 
  |   CLASSPATH: 
/usr/local/jboss-4.0.3SP1/bin/run.jar:/usr/java/jdk1.5.0_06//lib/tools.jar
  | 
  | =========================================================================
  | 
  | 11:29:26,115 INFO  [Server] Starting JBoss (MX MicroKernel)...
  | 11:29:26,123 INFO  [Server] Release ID: JBoss [Zion] 4.0.3SP1 (build: 
CVSTag=JBoss_4_0_3_SP1 date=200510231751)
  | 11:29:26,127 INFO  [Server] Home Dir: /usr/local/jboss-4.0.3SP1
  | 11:29:26,128 INFO  [Server] Home URL: file:/usr/local/jboss-4.0.3SP1/
  | 11:29:26,131 INFO  [Server] Patch URL: null
  | 11:29:26,131 INFO  [Server] Server Name: default
  | 11:29:26,132 INFO  [Server] Server Home Dir: 
/usr/local/jboss-4.0.3SP1/server/default
  | 11:29:26,133 INFO  [Server] Server Home URL: 
file:/usr/local/jboss-4.0.3SP1/server/default/
  | 11:29:26,134 INFO  [Server] Server Temp Dir: 
/usr/local/jboss-4.0.3SP1/server/default/tmp
  | 11:29:26,285 INFO  [Server] Root Deployment Filename: jboss-service.xml
  | 11:29:27,140 INFO  [ServerInfo] Java version: 1.5.0_06,Sun Microsystems Inc.
  | 11:29:27,140 INFO  [ServerInfo] Java VM: Java HotSpot(TM) 64-Bit Server VM 
1.5.0_06-b05,Sun Microsystems Inc.
  | 11:29:27,141 INFO  [ServerInfo] OS-System: Linux 2.6.12-12mdk,amd64

test-ds.xml

  | <?xml version="1.0" encoding="UTF-8"?>
  | <datasources>
  |   <local-tx-datasource>
  |     <jndi-name>TestDataSource</jndi-name>
  |     <connection-url>jdbc:mysql://localhost/test</connection-url>
  |     <driver-class>com.mysql.jdbc.Driver</driver-class>
  |     <user-name>root</user-name>
  |     <password>root</password>
  | 
<exception-sorter-class-name>org.jboss.resource.adapter.jdbc.vendor.MySQLExceptionSorter</exception-sorter-class-name>
  |     <metadata>
  |          <type-mapping>mySQL</type-mapping>
  |     </metadata>
  | </local-tx-datasource>
  | </datasources>
  | 

jndi.properties
in path : /usr/local/jboss-4.0.3SP1/server/default/conf
and also in : /usr/java/jdk1.5.0_06/lib/security


  | # DO NOT EDIT THIS FILE UNLESS YOU KNOW WHAT YOU ARE DOING
  | #
  | java.naming.factory.initial=org.jnp.interfaces.NamingContextFactory
  | java.naming.factory.url.pkgs=org.jboss.naming:org.jnp.interfaces
  | java.naming.provider.url=jnp://localhost:1099
  | 

When I start Jboss : 

  | 11:31:05,661 INFO  [ConnectionFactoryBindingService] Bound 
ConnectionManager 'jboss.jca:service=DataSourceBinding,name=TestDataSource' to 
JNDI name 'java:TestDataSource'
  | 


I tryed : 
 ds = (DataSource) ctx.lookup("java:TestDataSource");
 ds = (DataSource) ctx.lookup("TestDataSource");
 ds = (DataSource) ctx.lookup("java:/TestDataSource");
 ds = (DataSource) ctx.lookup("java:java:TestDataSource"); // why not :p

Nothing works, same error
Maybe I forgot a little thing... I hope someone knows what I forgot.


Let me know if you need more details.
Thank you very much for your help

(sorry for my english)



View the original post : 
http://www.jboss.com/index.html?module=bb&op=viewtopic&p=3941514#3941514

Reply to the post : 
http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=3941514


-------------------------------------------------------
Using Tomcat but need to do more? Need to support web services, security?
Get stuff done quickly with pre-integrated technology to make your job easier
Download IBM WebSphere Application Server v.1.0.1 based on Apache Geronimo
http://sel.as-us.falkag.net/sel?cmd=lnk&kid=120709&bid=263057&dat=121642
_______________________________________________
JBoss-user mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jboss-user

Reply via email to