Tentando usar JNDI

Olá,

Estou apanhando um pouco para usar o JNDI.

Estou usando o Hibernate com TomCat.
Eu uso também um plugin para carregar o arquivo hibernate.cfg.xml,
para setar no contexto o SessionFactory.

Gostaria de tirar algumas dúvidas sobre isso.
Por exemplo: No hibernate.cfg.xml eu gostaria de usar um JNDI,
mas não estou conseguindo cofigurar de maneira correta, aparecendo a seguinte mensagem no log:

javax.naming.NameNotFoundException: Name UserDatabase is not bound in this Context
	at org.apache.naming.NamingContext.lookup(NamingContext.java:811)

No server.xml eu coloquei o seguinte:

    	<Resource 	name="projds" 
    				auth="Container"
              		type="javax.sql.DataSource"
       		  		description="Proj DataSource">
	    </Resource>
    
    	<ResourceParams name="projds">
      		<parameter>
        		<name>factory</name>
        		<value>org.apache.commons.dbcp.BasicDataSourceFactory</value>
      		</parameter>    		
            <parameter>
				<name>user</name>
				<value>usuario</value>
			</parameter>
            <parameter>
				<name>password</name>
				<value>senha</value>
			</parameter>
            <parameter>
				<name>driverClassName</name>
				<value>oracle.jdbc.OracleDriver</value>
			</parameter>
            <parameter>
				<name>url</name>
				<value>jdbc:oracle:thin:@servidor:porta:database</value>
			</parameter>
            <parameter>
				<name>maxActive</name>
				<value>100</value>
			</parameter>
            <parameter>
				<name>maxIdle</name>
				<value>100</value>
			</parameter>
            <parameter>
				<name>maxWait</name>
				<value>-1</value>
			</parameter>      		
		</ResourceParams>

no web.xml eu coloquei o seguinte:

    <resource-ref>
    	<description>Proj DataSource</description>
    	<res-ref-name>projds</res-ref-name>
    	<res-type>javax.sql.DataSource</res-type>
    	<res-auth>Container</res-auth>
    </resource-ref>

e no hibernate.cfg.xml? como eu faria?

eu to fazendo assim;

    <session-factory name="java:comp/env/hibernate/SessionFactory">

        <!-- properties -->

		<!-- JNDI DataSource -->
		
		<property name="connection.datasource">fastds</property>
		<property name="dialect">net.sf.hibernate.dialect.OracleDialect</property>
		
		<property name="transaction.factory_class">net.sf.hibernate.transaction.JTATransactionFactory</property>
		<property name="jta.UserTransaction">java:comp/UserTransaction</property>
	.
	.
	.

Alguém poderia me dar umas dicas???

Muito obrigado

Abraço

Susbstitua essa linha (hiberante-cfg.xml) :

<property name=“connection.datasource”>fastds</property>

por:

<property name=“connection.datasource”>projds</property>

Boa sorte.

Olá, tudo bom?

Então, desculpe… eu já tinho visto isso, já corrigi,
mas continua dando problema, mas agora outro… então eu tirei a tag <realm>. Agora
quando eu tento iniciar o Tomcat, ele não gera a pasta proj dentro
de webapps, aparecendo o seguinte:

2004-04-02 09:56:09 StandardContext[/proj]: Resources start failed:
java.lang.IllegalArgumentException: Document base C:Program FilesApache GroupTomcat 4.1webappsproj does not exist or is not a readable directory
	at org.apache.naming.resources.FileDirContext.setDocBase(FileDirContext.java:193)
	at org.apache.catalina.core.StandardContext.resourcesStart(StandardContext.java:3343)
	at org.apache.catalina.core.StandardContext.start(StandardContext.java:3473)
	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1188)
	at org.apache.catalina.core.StandardHost.start(StandardHost.java:738)
	at org.apache.catalina.core.ContainerBase.start(ContainerBase.java:1188)
	at org.apache.catalina.core.StandardEngine.start(StandardEngine.java:347)
	at org.apache.catalina.core.StandardService.start(StandardService.java:497)
	at org.apache.catalina.core.StandardServer.start(StandardServer.java:2190)
	at org.apache.catalina.startup.Catalina.start(Catalina.java:512)
	at org.apache.catalina.startup.Catalina.execute(Catalina.java:400)
	at org.apache.catalina.startup.Catalina.process(Catalina.java:180)
	at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)
	at sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39)
	at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
	at java.lang.reflect.Method.invoke(Method.java:324)
	at org.apache.catalina.startup.Bootstrap.main(Bootstrap.java:203)

Valew pela atenção

Existe algum diretorio com nome errado ou que nao foi criado…

veja isso…

[]'s