Hi,

Thank you for the rapid response. While googling I came across the issue you
are linking. I changed my datasource configuration to the following:

  <Resource id="jdbc/OracleNarDs" type="DataSource">
    XaDataSource        jdbc/OracleNarDsXa
    DataSourceCreator   dbcp-alternative
    MaxIdle             10
    MaxActive           20
    ValidationQuery     SELECT 1 FROM DUAL
  </Resource>

  <Resource id="jdbc/OracleNarDsXa" type="XADataSource"
class-name="oracle.jdbc.xa.client.OracleXADataSource">
    JdbcUrl           jdbc:oracle:thin:@****:1521:****
    UserName          ***
    Password          ***
  </Resource>

With this configuration I get the stacktrace shown below:

org.apache.catalina.LifecycleException: Failed to start component
[StandardEngine[Catalina].StandardHost[localhost].StandardContext[/iam-as]]
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:154)
        at
org.apache.catalina.core.ContainerBase.addChildInternal(ContainerBase.java:901)
        at 
org.apache.catalina.core.ContainerBase.addChild(ContainerBase.java:877)
        at org.apache.catalina.core.StandardHost.addChild(StandardHost.java:649)
        at
org.apache.tomee.catalina.TomcatWebAppBuilder.deployWar(TomcatWebAppBuilder.java:648)
        at
org.apache.tomee.catalina.TomcatWebAppBuilder.deployWebApps(TomcatWebAppBuilder.java:618)
        at
org.apache.tomee.catalina.deployment.TomcatWebappDeployer.deploy(TomcatWebappDeployer.java:43)
        at org.apache.openejb.assembler.DeployerEjb.deploy(DeployerEjb.java:175)
        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:597)
        at
org.apache.openejb.core.interceptor.ReflectionInvocationContext$Invocation.invoke(ReflectionInvocationContext.java:192)
        at
org.apache.openejb.core.interceptor.ReflectionInvocationContext.proceed(ReflectionInvocationContext.java:173)
        at
org.apache.openejb.security.internal.InternalSecurityInterceptor.invoke(InternalSecurityInterceptor.java:35)
        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:597)
        at
org.apache.openejb.core.interceptor.ReflectionInvocationContext$Invocation.invoke(ReflectionInvocationContext.java:192)
        at
org.apache.openejb.core.interceptor.ReflectionInvocationContext.proceed(ReflectionInvocationContext.java:173)
        at
org.apache.openejb.monitoring.StatsInterceptor.record(StatsInterceptor.java:181)
        at
org.apache.openejb.monitoring.StatsInterceptor.invoke(StatsInterceptor.java:100)
        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:597)
        at
org.apache.openejb.core.interceptor.ReflectionInvocationContext$Invocation.invoke(ReflectionInvocationContext.java:192)
        at
org.apache.openejb.core.interceptor.ReflectionInvocationContext.proceed(ReflectionInvocationContext.java:173)
        at
org.apache.openejb.core.interceptor.InterceptorStack.invoke(InterceptorStack.java:85)
        at
org.apache.openejb.core.stateless.StatelessContainer._invoke(StatelessContainer.java:227)
        at
org.apache.openejb.core.stateless.StatelessContainer.invoke(StatelessContainer.java:194)
        at
org.apache.openejb.server.ejbd.EjbRequestHandler.doEjbObject_BUSINESS_METHOD(EjbRequestHandler.java:370)
        at
org.apache.openejb.server.ejbd.EjbRequestHandler.processRequest(EjbRequestHandler.java:181)
        at
org.apache.openejb.server.ejbd.EjbDaemon.processEjbRequest(EjbDaemon.java:344)
        at org.apache.openejb.server.ejbd.EjbDaemon.service(EjbDaemon.java:240)
        at org.apache.openejb.server.ejbd.EjbServer.service(EjbServer.java:86)
        at
org.apache.openejb.server.httpd.ServerServlet.service(ServerServlet.java:58)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:727)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:303)
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:208)
        at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:220)
        at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:122)
        at org.apache.tomee.catalina.OpenEJBValve.invoke(OpenEJBValve.java:44)
        at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:171)
        at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:103)
        at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:950)
        at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:116)
        at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:408)
        at
org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:1070)
        at
org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:611)
        at
org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:316)
        at
java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886)
        at
java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908)
        at
org.apache.tomcat.util.threads.TaskThread$WrappingRunnable.run(TaskThread.java:61)
        at java.lang.Thread.run(Thread.java:662)
Caused by: org.apache.tomee.catalina.TomEERuntimeException:
org.apache.openejb.OpenEJBException: Creating application failed:
C:\workspace3-iam772\iam-all\iamas\iam-as\iam-as-rest\target\iam-as-rest-8.0.0-RC1-SNAPSHOT:
java.lang.ClassCastException: $Proxy29 cannot be cast to
javax.sql.DataSource: $Proxy29 cannot be cast to javax.sql.DataSource
        at
org.apache.tomee.catalina.TomcatWebAppBuilder.startInternal(TomcatWebAppBuilder.java:1257)
        at
org.apache.tomee.catalina.TomcatWebAppBuilder.configureStart(TomcatWebAppBuilder.java:1087)
        at
org.apache.tomee.catalina.GlobalListenerSupport.lifecycleEvent(GlobalListenerSupport.java:130)
        at
org.apache.catalina.util.LifecycleSupport.fireLifecycleEvent(LifecycleSupport.java:117)
        at
org.apache.catalina.util.LifecycleBase.fireLifecycleEvent(LifecycleBase.java:90)
        at
org.apache.catalina.core.StandardContext.startInternal(StandardContext.java:5378)
        at org.apache.catalina.util.LifecycleBase.start(LifecycleBase.java:150)
        ... 55 more
Caused by: org.apache.openejb.OpenEJBException: Creating application failed:
C:\workspace3-iam772\iam-all\iamas\iam-as\iam-as-rest\target\iam-as-rest-8.0.0-RC1-SNAPSHOT:
java.lang.ClassCastException: $Proxy29 cannot be cast to
javax.sql.DataSource: $Proxy29 cannot be cast to javax.sql.DataSource
        at
org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:896)
        at
org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:623)
        at
org.apache.tomee.catalina.TomcatWebAppBuilder.startInternal(TomcatWebAppBuilder.java:1248)
        ... 61 more
Caused by: org.apache.openejb.OpenEJBException:
java.lang.ClassCastException: $Proxy29 cannot be cast to
javax.sql.DataSource: $Proxy29 cannot be cast to javax.sql.DataSource
        at
org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:756)
        ... 63 more
Caused by: java.lang.ClassCastException: $Proxy29 cannot be cast to
javax.sql.DataSource
        at
org.apache.openejb.assembler.classic.PersistenceBuilder.createEntityManagerFactory(PersistenceBuilder.java:131)
        at
org.apache.openejb.assembler.classic.Assembler.createApplication(Assembler.java:750)
        ... 63 more

Furthermore I notice the following lines in my logs:

2014-09-09 09:30:07,521 INFO  [OpenEJB.startup.config][ | ] Auto-creating a
Resource with id 'jdbc/OracleNarDsNonJta' of type 'DataSource for
'iam-entities'.
2014-09-09 09:30:07,521 INFO  [OpenEJB.startup.config][ | ] Configuring
Service(id=jdbc/OracleNarDsNonJta, type=Resource,
provider-id=jdbc/OracleNarDs)
2014-09-09 09:30:07,521 INFO  [OpenEJB.startup.service][ | ] Creating
Resource(id=jdbc/OracleNarDsNonJta)
2014-09-09 09:30:07,530 WARN  [OpenEJB.startup.service][ | ] Property
"JdbcUrl" not supported by "jdbc/OracleNarDsNonJta"
2014-09-09 09:30:07,530 WARN  [OpenEJB.startup.service][ | ] Property
"UserName" not supported by "jdbc/OracleNarDsNonJta"
2014-09-09 09:30:07,530 WARN  [OpenEJB.startup.service][ | ] Property
"Password" not supported by "jdbc/OracleNarDsNonJta"
2014-09-09 09:30:07,530 WARN  [OpenEJB.startup.service][ | ] Property
"PasswordCipher" not supported by "jdbc/OracleNarDsNonJta"
2014-09-09 09:30:07,530 WARN  [OpenEJB.startup.service][ | ] Property
"ConnectionProperties" not supported by "jdbc/OracleNarDsNonJta"
2014-09-09 09:30:07,530 WARN  [OpenEJB.startup.service][ | ] Property
"DefaultAutoCommit" not supported by "jdbc/OracleNarDsNonJta"
2014-09-09 09:30:07,530 WARN  [OpenEJB.startup.service][ | ] Property
"DefaultReadOnly" not supported by "jdbc/OracleNarDsNonJta"
2014-09-09 09:30:07,530 WARN  [OpenEJB.startup.service][ | ] Property
"InitialSize" not supported by "jdbc/OracleNarDsNonJta"
2014-09-09 09:30:07,530 WARN  [OpenEJB.startup.service][ | ] Property
"MaxActive" not supported by "jdbc/OracleNarDsNonJta"
2014-09-09 09:30:07,530 WARN  [OpenEJB.startup.service][ | ] Property
"MaxIdle" not supported by "jdbc/OracleNarDsNonJta"
2014-09-09 09:30:07,530 WARN  [OpenEJB.startup.service][ | ] Property
"MinIdle" not supported by "jdbc/OracleNarDsNonJta"
2014-09-09 09:30:07,530 WARN  [OpenEJB.startup.service][ | ] Property
"ValidationQuery" not supported by "jdbc/OracleNarDsNonJta"
2014-09-09 09:30:07,530 WARN  [OpenEJB.startup.service][ | ] Property
"TestOnBorrow" not supported by "jdbc/OracleNarDsNonJta"
2014-09-09 09:30:07,530 WARN  [OpenEJB.startup.service][ | ] Property
"TestOnReturn" not supported by "jdbc/OracleNarDsNonJta"
2014-09-09 09:30:07,530 WARN  [OpenEJB.startup.service][ | ] Property
"TestWhileIdle" not supported by "jdbc/OracleNarDsNonJta"
2014-09-09 09:30:07,530 WARN  [OpenEJB.startup.service][ | ] Property
"NumTestsPerEvictionRun" not supported by "jdbc/OracleNarDsNonJta"
2014-09-09 09:30:07,531 WARN  [OpenEJB.startup.service][ | ] Property
"PoolPreparedStatements" not supported by "jdbc/OracleNarDsNonJta"
2014-09-09 09:30:07,531 WARN  [OpenEJB.startup.service][ | ] Property
"MaxOpenPreparedStatements" not supported by "jdbc/OracleNarDsNonJta"
2014-09-09 09:30:07,531 WARN  [OpenEJB.startup.service][ | ] Property
"AccessToUnderlyingConnectionAllowed" not supported by
"jdbc/OracleNarDsNonJta"
2014-09-09 09:30:07,531 WARN  [OpenEJB.startup.service][ | ] Property
"XaDataSource" not supported by "jdbc/OracleNarDsNonJta"
2014-09-09 09:30:07,531 WARN  [OpenEJB.startup.service][ | ] Property
"DataSourceCreator" not supported by "jdbc/OracleNarDsNonJta"

Why does TomEE try to create a Non-JTA datasource? Does this have anything
to do with the stacktrace shown above?

Kind regards,

Dries Elliott



--
View this message in context: 
http://tomee-openejb.979440.n4.nabble.com/Oracle-XA-datasource-configuration-tp4671692p4671694.html
Sent from the TomEE Users mailing list archive at Nabble.com.

Reply via email to