[JNDI/Naming/Network] - basic JNDI beginners problems - cant do look up from applica
by wiggy
just trying to get to grips with JBOSS AS4.2 and new to the environment. Really trying to get to EJB3 but doing it bit by bit and want to be able to call session bean services from a test application client - that i can run in eclipse.
deployed 4.2 and configured a My sql XA datasource as follows.
|
| <datasources>
| <xa-datasource>
| <jndi-name>jdbc/willsDS</jndi-name>
| <use-java-context>false</use-java-context>
| <xa-datasource-class>com.mysql.jdbc.jdbc2.optional.MysqlXADataSource</xa-datasource-class>
| <xa-datasource-property
| name="URL">
| jdbc:mysql://localhost:3306/test
| </xa-datasource-property>
| <user-name>will</user-name>
| <password>will</password>
| <transaction-isolation>TRANSACTION_READ_COMMITTED</transaction-isolation>
| <max-pool-size>5</max-pool-size>
| <min-pool-size>1</min-pool-size>
|
| <blocking-timeout-millis>2000</blocking-timeout-millis>
| <idle-timeout-minutes>2</idle-timeout-minutes>
| <track-connection-by-tx>true</track-connection-by-tx>
| <no-tx-separate-pools>false</no-tx-separate-pools>
|
| <exception-sorter-class-name>
| org.jboss.resource.adapter.jdbc.vendor.MySQLExceptionSorter
| </exception-sorter-class-name>
| <metadata>
| <type-mapping>mySQL</type-mapping>
| </metadata>
|
| </xa-datasource>
| </datasources>
|
This all goes well - and when i start the server inside eclipse i can see the datasource in the JNDIView tree
i've registered the datasource in the global tree and not the java: default part as the JNDI FAQ says you cant see the java: tree unless its in the same VM.
i've checked netstat - a and port 1099 is being listened on when i run the server up.
next created a simple client app (as an EJB project in eclipse to pickup the AS libraries if nothing else)
my simple app client looks like this - at the mo i'm just trying to get a simple JNDI lookup to the datasource in the AS (no DI here as its an standalone client)
|
| package org;
|
| import java.sql.Connection;
| import java.util.Hashtable;
|
| import javax.naming.InitialContext;
| import javax.sql.DataSource;
|
|
| /**
| * @author Will
| *
| */
| public class Test
| {
|
|
| public static void main(String[] args) throws Exception
| {
|
|
| InitialContext ctx = getInitialContext();
| DataSource ds;
| Connection conn;
|
| //llookup ds via jndi in global tree - using jnp://localhost:1099 - see helper function above
| ds = (DataSource) ctx.lookup("jdbc/willDS");
| conn = ds.getConnection();
| conn.close();
|
|
| }
|
| public static InitialContext getInitialContext() throws Exception
| {
| Hashtable props = getInitialContextProperties();
| return new InitialContext(props);
| }
|
| private static Hashtable getInitialContextProperties()
| {
|
| Hashtable props = new Hashtable();
| props.put("java.naming.factory.initial", "org.jnp.interfaces.NamingContextFactory");
| props.put("javax.naming.Context.PROVIDER_URL","jnp://localhost:1099");
| props.put("java.naming.factory.url.pkgs", "org.jboss.naming:org.jnp.interfaces" );
| return props;
| }
| }
|
when i run the app however i get varying errors depending on whether i set the provider_url or not.
code shows me setting the provider_url and get error
anonymous wrote :
| Exception in thread "main" javax.naming.CommunicationException: Receive timed out [Root exception is java.net.SocketTimeoutException: Receive timed out]
| at org.jnp.interfaces.NamingContext.discoverServer(NamingContext.java:1317)
| at org.jnp.interfaces.NamingContext.checkRef(NamingContext.java:1446)
| at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:594)
| at org.jnp.interfaces.NamingContext.lookup(NamingContext.java:587)
| at javax.naming.InitialContext.lookup(Unknown Source)
| at org.Test.main(Test.java:32)
| Caused by: java.net.SocketTimeoutException: Receive timed out
| at java.net.PlainDatagramSocketImpl.receive0(Native Method)
| at java.net.PlainDatagramSocketImpl.receive(Unknown Source)
| at java.net.DatagramSocket.receive(Unknown Source)
| at org.jnp.interfaces.NamingContext.discoverServer(NamingContext.java:1287)
| ... 5 more
|
on an earlier go i got errors about cant find bound class jdbc - but i cant get that at present - and now stuck on the above.
I'll never progress to anything smarter if i cant sort the basics out - what am i doing wrong, any ideas please?
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4081019#4081019
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4081019
18 years, 7 months
[EJB 3.0] - EntityManager.lock and database connections
by ablevine1
When you use EntityManager.lock, does it hold on to the same database connection the whole time, not allowing other threads to use that connection?? I seem to be running out of connections in my connection pool, as I am getting the following exception:
| INFO [WorkManager(4)-53846][2007-09-03 04:23:33,657][org.hibernate.event.def.DefaultLoadEventListener] Log4JLogger.java(99): Error performing load command
| org.hibernate.exception.GenericJDBCException: Cannot open connection
| at org.hibernate.exception.SQLStateConverter.handledNonSpecificException(SQLStateConverter.java:103)
| at org.hibernate.exception.SQLStateConverter.convert(SQLStateConverter.java:91)
| at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:43)
| at org.hibernate.exception.JDBCExceptionHelper.convert(JDBCExceptionHelper.java:29)
| at org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:420)
| at org.hibernate.jdbc.ConnectionManager.getConnection(ConnectionManager.java:144)
| at org.hibernate.jdbc.AbstractBatcher.prepareQueryStatement(AbstractBatcher.java:139)
| at org.hibernate.loader.Loader.prepareQueryStatement(Loader.java:1560)
| at org.hibernate.loader.Loader.doQuery(Loader.java:661)
| at org.hibernate.loader.Loader.doQueryAndInitializeNonLazyCollections(Loader.java:224)
| at org.hibernate.loader.Loader.loadEntity(Loader.java:1784)
| at org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:48)
| at org.hibernate.loader.entity.AbstractEntityLoader.load(AbstractEntityLoader.java:42)
| at org.hibernate.persister.entity.AbstractEntityPersister.load(AbstractEntityPersister.java:2977)
| at org.hibernate.event.def.DefaultLoadEventListener.loadFromDatasource(DefaultLoadEventListener.java:393)
| at org.hibernate.event.def.DefaultLoadEventListener.doLoad(DefaultLoadEventListener.java:374)
| at org.hibernate.event.def.DefaultLoadEventListener.load(DefaultLoadEventListener.java:137)
| at org.hibernate.event.def.DefaultLoadEventListener.proxyOrLoad(DefaultLoadEventListener.java:193)
| at org.hibernate.event.def.DefaultLoadEventListener.onLoad(DefaultLoadEventListener.java:101)
| at org.hibernate.impl.SessionImpl.fireLoad(SessionImpl.java:878)
| at org.hibernate.impl.SessionImpl.get(SessionImpl.java:815)
| at org.hibernate.impl.SessionImpl.get(SessionImpl.java:808)
| at org.hibernate.ejb.AbstractEntityManagerImpl.find(AbstractEntityManagerImpl.java:174)
| at org.jboss.ejb3.entity.TransactionScopedEntityManager.find(TransactionScopedEntityManager.java:164)
| at com.squaretrade.stateful.AbstractStateEngineImpl.loadObject(AbstractStateEngineImpl.java:118)
| at com.squaretrade.stateful.AbstractStateEngineImpl.process(AbstractStateEngineImpl.java:31)
| at sun.reflect.GeneratedMethodAccessor1671.invoke(Unknown Source)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| at java.lang.reflect.Method.invoke(Method.java:585)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:112)
| at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:166)
| at org.jboss.ejb3.interceptor.EJB3InterceptorsInterceptor.invoke(EJB3InterceptorsInterceptor.java:63)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:54)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:46)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.aspects.tx.TxPolicy.invokeInOurTx(TxPolicy.java:79)
| at org.jboss.aspects.tx.TxInterceptor$RequiresNew.invoke(TxInterceptor.java:253)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.aspects.tx.TxPropagationInterceptor.invoke(TxPropagationInterceptor.java:76)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke(StatelessInstanceInterceptor.java:62)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.aspects.security.AuthenticationInterceptor.invoke(AuthenticationInterceptor.java:77)
| at org.jboss.ejb3.security.Ejb3AuthenticationInterceptor.invoke(Ejb3AuthenticationInterceptor.java:102)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.ejb3.ENCPropagationInterceptor.invoke(ENCPropagationInterceptor.java:47)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.ejb3.asynchronous.AsynchronousInterceptor.invoke(AsynchronousInterceptor.java:106)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.ejb3.stateless.StatelessContainer.localInvoke(StatelessContainer.java:211)
| at org.jboss.ejb3.stateless.StatelessLocalProxy.invoke(StatelessLocalProxy.java:79)
| at $Proxy339.process(Unknown Source)
| at com.squaretrade.stateful.AbstractStateEngineQueueHandler.onMessage(AbstractStateEngineQueueHandler.java:38)
| at sun.reflect.GeneratedMethodAccessor1669.invoke(Unknown Source)
| at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
| at java.lang.reflect.Method.invoke(Method.java:585)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:112)
| at org.jboss.ejb3.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:166)
| at org.jboss.ejb3.interceptor.EJB3InterceptorsInterceptor.invoke(EJB3InterceptorsInterceptor.java:63)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.ejb3.entity.TransactionScopedEntityManagerInterceptor.invoke(TransactionScopedEntityManagerInterceptor.java:54)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.ejb3.AllowedOperationsInterceptor.invoke(AllowedOperationsInterceptor.java:46)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.aspects.tx.TxPolicy.invokeInCallerTx(TxPolicy.java:126)
| at org.jboss.aspects.tx.TxInterceptor$Required.invoke(TxInterceptor.java:195)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.ejb3.stateless.StatelessInstanceInterceptor.invoke(StatelessInstanceInterceptor.java:62)
| at org.jboss.aop.joinpoint.MethodInvocation.invokeNext(MethodInvocation.java:101)
| at org.jboss.ejb3.mdb.MessagingContainer.localInvoke(MessagingContainer.java:245)
| at org.jboss.ejb3.mdb.inflow.MessageInflowLocalProxy.delivery(MessageInflowLocalProxy.java:268)
| at org.jboss.ejb3.mdb.inflow.MessageInflowLocalProxy.invoke(MessageInflowLocalProxy.java:138)
| at $Proxy138.onMessage(Unknown Source)
| at org.jboss.resource.adapter.jms.inflow.JmsServerSession.onMessage(JmsServerSession.java:183)
| at org.jboss.mq.SpyMessageConsumer.sessionConsumerProcessMessage(SpyMessageConsumer.java:905)
| at org.jboss.mq.SpyMessageConsumer.addMessage(SpyMessageConsumer.java:170)
| at org.jboss.mq.SpySession.run(SpySession.java:323)
| at org.jboss.resource.adapter.jms.inflow.JmsServerSession.run(JmsServerSession.java:249)
| at org.jboss.resource.work.WorkWrapper.execute(WorkWrapper.java:204)
| at org.jboss.util.threadpool.BasicTaskWrapper.run(BasicTaskWrapper.java:275)
| at EDU.oswego.cs.dl.util.concurrent.PooledExecutor$Worker.run(PooledExecutor.java:743)
| at java.lang.Thread.run(Thread.java:595)
| Caused by: org.jboss.util.NestedSQLException: No ManagedConnections available within configured blocking timeout ( 30000 [ms] ); - nested throwable: (javax.resource.ResourceException: No ManagedConnections available within configured blocking timeout ( 30000 [ms] ))
| at org.jboss.resource.adapter.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:94)
| at org.hibernate.ejb.connection.InjectedDataSourceConnectionProvider.getConnection(InjectedDataSourceConnectionProvider.java:47)
| at org.hibernate.jdbc.ConnectionManager.openConnection(ConnectionManager.java:417)
| ... 79 more
| Caused by: javax.resource.ResourceException: No ManagedConnections available within configured blocking timeout ( 30000 [ms] )
| at org.jboss.resource.connectionmanager.InternalManagedConnectionPool.getConnection(InternalManagedConnectionPool.java:289)
| at org.jboss.resource.connectionmanager.JBossManagedConnectionPool$BasePool.getConnection(JBossManagedConnectionPool.java:529)
| at org.jboss.resource.connectionmanager.BaseConnectionManager2.getManagedConnection(BaseConnectionManager2.java:341)
| at org.jboss.resource.connectionmanager.TxConnectionManager.getManagedConnection(TxConnectionManager.java:301)
| at org.jboss.resource.connectionmanager.BaseConnectionManager2.allocateConnection(BaseConnectionManager2.java:396)
| at org.jboss.resource.connectionmanager.BaseConnectionManager2$ConnectionManagerProxy.allocateConnection(BaseConnectionManager2.java:842)
| at org.jboss.resource.adapter.jdbc.WrapperDataSource.getConnection(WrapperDataSource.java:88)
| ... 81 more
|
I was wondering if this could be caused by using EntityManager.lock where the lock is held for about a second. There does not seem to be a deadlock, but the oracle connection pool seems to be running out of connections intermittently, and I'm trying to figure out the possible causes.
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4081010#4081010
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4081010
18 years, 7 months
[JBoss Seam] - Hibernate Search
by srpantano
Where is the error in the code? Because doesn´t work. I´m using JPA + Seam 2.0.
| List result = null;
|
| try {
|
| org.apache.lucene.queryParser.QueryParser parser =
| new org.apache.lucene.queryParser.QueryParser("sistem",
| new org.apache.lucene.analysis.standard.StandardAnalyzer(BrazilianAnalyzer.BRAZILIAN_STOP_WORDS));
|
| org.apache.lucene.search.Query query = parser.parse("sistema");
| org.hibernate.search.FullTextQuery hibQuery =
| getFullTextSession().createFullTextQuery(query, Sistem.class);
|
| result = hibQuery.list();
|
| return result;
|
| } catch (ParseException ex) {
| Logger.getLogger("global").log(Level.SEVERE, null, ex);
| }
|
but when I run:
| 14:15:54,671 FATAL [application] java.lang.reflect.InvocationTargetException
| javax.faces.el.EvaluationException: java.lang.reflect.InvocationTargetException
| at javax.faces.component.MethodBindingMethodExpressionAdapter.invoke(MethodBindingMethodExpressionAdapter.java:91)
| at com.sun.faces.application.ActionListenerImpl.processAction(ActionListenerImpl.java:91)
| at javax.faces.component.UICommand.broadcast(UICommand.java:383)
|
| ...
|
|
| Caused by: java.lang.NoSuchMethodError: org.hibernate.search.FullTextSession.createFullTextQuery(Lorg/apache/lucene/search/Query;[Ljava/lang/Class;)Lorg/hibernate/search/FullTextQuery;
| at com.bcsinfo.security.view.web.util.FullTextSearch.search(FullTextSearch.java:77)
| at com.bcsinfo.security.view.web.util.FullTextSearch.toSearch(FullTextSearch.java:125)
| ... 87 more
|
thanks for help!
View the original post : http://www.jboss.com/index.html?module=bb&op=viewtopic&p=4081004#4081004
Reply to the post : http://www.jboss.com/index.html?module=bb&op=posting&mode=reply&p=4081004
18 years, 7 months