You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@geronimo.apache.org by Torsten Krall <tk...@tkl-soft.de> on 2007/02/05 13:44:40 UTC

Problem creating sql-security-realm using geronimo-tomcat6-jee5-2.0-M2

Hello,

I created and deployed a global database pool "tkldienstplanpool", the
test worked fine.

Now I want to use this database pool within a sql-security-realm but the
test throws following exception:
java.lang.IllegalArgumentException: interface
org.tranql.connector.DissociatableConnectionHandle is not visible from
class loader

Why does the test of the database pool run fine but the security-realm
does not work?

Best regards,
Torsten Krall

Entire stacktrace:

13:17:26,455 INFO  [DatabasePoolPortlet] Deployment completed successfully!
13:31:56,477 WARN  [SecurityRealmPortlet] Testing with options
{groupSelect=SELECT d1.username, d2.name as gruppe FROM
dp_realm_user_group d
 INNER JOIN dp_realm_user d1 ON d1.id=d.user INNER JOIN dp_realm_group
d2 ON d2.id=d.group WHERE d1.username=?, org.apache.geronimo.security
.realm.GenericSecurityRealm.CLASSLOADER=[org.apache.geronimo.kernel.classloader.JarFileClassLoader
id=org.apache.geronimo.configs/webconsole
-tomcat_standard.war/2.0-M2/car], dataSourceApplication=null,
userSelect=select username, password from dp_realm_user where
username=?, data
SourceName=tkldienstplanpool3}
13:32:10,276 WARN  [SecurityRealmPortlet] Test login failed
javax.security.auth.login.LoginException: SQL error
        at
org.apache.geronimo.security.realm.providers.SQLLoginModule.login(SQLLoginModule.java:257)
        at
org.apache.geronimo.console.util.KernelManagementHelper.testLoginModule(KernelManagementHelper.java:423)
        at
org.apache.geronimo.console.util.PortletManager.testLoginModule(PortletManager.java:160)
        at
org.apache.geronimo.console.securitymanager.realm.SecurityRealmPortlet.actionAttemptLogin(SecurityRealmPortlet.java:334)
        at
org.apache.geronimo.console.securitymanager.realm.SecurityRealmPortlet.processAction(SecurityRealmPortlet.java:215)
        at
org.apache.pluto.core.PortletServlet.dispatch(PortletServlet.java:229)
        at
org.apache.pluto.core.PortletServlet.doGet(PortletServlet.java:158)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:693)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
        at
org.apache.pluto.core.PortletServlet.service(PortletServlet.java:153)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at
org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:687)
        at
org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:590)
        at
org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:505)
        at
org.apache.pluto.invoker.impl.PortletInvokerImpl.invoke(PortletInvokerImpl.java:120)
        at
org.apache.pluto.invoker.impl.PortletInvokerImpl.action(PortletInvokerImpl.java:68)
        at
org.apache.pluto.PortletContainerImpl.processPortletAction(PortletContainerImpl.java:164)
        at
org.apache.pluto.portalImpl.core.PortletContainerWrapperImpl.processPortletAction(PortletContainerWrapperImpl.java:82)
        at org.apache.pluto.portalImpl.Servlet.doGet(Servlet.java:227)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:693)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
        at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
        at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
        at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:228)
        at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
        at
org.apache.geronimo.tomcat.valve.DefaultSubjectValve.invoke(DefaultSubjectValve.java:56)
        at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)
        at
org.apache.geronimo.tomcat.GeronimoStandardContext$SystemMethodValve.invoke(GeronimoStandardContext.java:338)
        at
org.apache.geronimo.tomcat.valve.GeronimoBeforeAfterValve.invoke(GeronimoBeforeAfterValve.java:47)
        at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
        at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
        at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
        at
org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:517)
        at
org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:212)
        at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
        at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:634)
        at
org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:445)
        at java.lang.Thread.run(Thread.java:619)
Caused by: java.sql.SQLException
        at
org.tranql.connector.jdbc.DataSource.getConnection(DataSource.java:61)
        at
$javax.sql.DataSource$$FastClassByCGLIB$$6525cafd.invoke(<generated>)
        at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
        at
org.apache.geronimo.connector.ConnectorMethodInterceptor.intercept(ConnectorMethodInterceptor.java:54)
        at
$javax.sql.DataSource$$EnhancerByCGLIB$$8b609c1.getConnection(<generated>)
        at
org.apache.geronimo.security.realm.providers.SQLLoginModule.login(SQLLoginModule.java:194)
        ... 38 more
Caused by: javax.resource.ResourceException: Unable to construct
connection proxy
        at
org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator.proxyConnection(ConnectionTrackingCoordin
ator.java:238)
        at
org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator.handleObtained(ConnectionTrackingCoordina
tor.java:157)
        at
org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator$$FastClassByCGLIB$$5d33aabf.invoke(<gener
ated>)
        at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
        at
org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
        at
org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:127)
        at
org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:820)
        at
org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57)
        at
org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:35)
        at
org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96)
        at
org.apache.geronimo.gbean.GBeanLifecycle$$EnhancerByCGLIB$$51d42e0c.handleObtained(<generated>)
        at
org.apache.geronimo.connector.outbound.ConnectionTrackingInterceptor.getConnection(ConnectionTrackingInterceptor.java:67)
        at
org.apache.geronimo.connector.outbound.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:61)
        at
org.tranql.connector.jdbc.DataSource.getConnection(DataSource.java:56)
        ... 43 more
Caused by: java.lang.IllegalArgumentException: interface
org.tranql.connector.DissociatableConnectionHandle is not visible from
class loader

        at java.lang.reflect.Proxy.getProxyClass(Proxy.java:353)
        at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:581)
        at
org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator.proxyConnection(ConnectionTrackingCoordin
ator.java:230)
        ... 56 more

Re: HttpSession, Geronimo 1.0 with Tomcat 5.5.9 and geronimo 1.1.1 with Tomcat 5.5.15

Posted by Vamsavardhana Reddy <c1...@gmail.com>.
http://svn.apache.org/viewvc?view=rev&revision=303826


On 2/5/07, sreepriya ramakrishnan <sr...@yahoo.com> wrote:
>
> Hi Paul,
>
> Thank you. I was wondering where the revision
> information rev 303826 is avilable? Could you please
> mail me the link.
>
> Thanks,
> Priya
> --- Paul McMahan <pa...@gmail.com> wrote:
>
> > getId does not check to see if the session is valid
> > Tomcat 5.5.9.  In
> > Tomcat 5.5.15 the check is made (see rev 303826).
> >
> > Best wishes,
> > Paul
> >
> >
> > On 2/5/07, sreepriya ramakrishnan
> > <sr...@yahoo.com> wrote:
> > > Hi all,
> > >
> > > Please find below the summary of the problem:
> > >
> > > HttpSession objects are loaded into a HashMap in
> > the
> > > following manner.
> > >
> > > sessionMap.add(httpSession.getId(),httpSession);
> > > and when the User logs out from the system we do
> > this:
> > > httpSession.invalidate();
> > > sessionMap.remove(httpSession.getId());
> > >
> > > This used to work in Geronimo 1.0 and Tomcat
> > 5.5.9.
> > >
> > > But somehow the same thing does not work in
> > Geronimo
> > > 1.1.1 and Tomcat 5.5.15.
> > >  It says:
> > > java.lang.IllegalStateException: getId: Session
> > > already invalidated
> > >
> > > and it works if I change the code to:
> > >
> > > sessionMap.remove(httpSession.getId());
> > > httpSession.invalidate();
> > >
> > > I was wondering if there is any change in Tomcat
> > that
> > > is causing this issue.
> > >
> > > Thanks,
> > > Priya
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> >
>
> ____________________________________________________________________________________
> > > Do you Yahoo!?
> > > Everyone is raving about the all-new Yahoo! Mail
> > beta.
> > > http://new.mail.yahoo.com
> > >
> >
>
>
>
>
>
> ____________________________________________________________________________________
> Get your own web address.
> Have a HUGE year through Yahoo! Small Business.
> http://smallbusiness.yahoo.com/domains/?p=BESTDEAL
>

Re: HttpSession, Geronimo 1.0 with Tomcat 5.5.9 and geronimo 1.1.1 with Tomcat 5.5.15

Posted by Paul McMahan <pa...@gmail.com>.
see http://svn.apache.org/viewvc?view=rev&revision=303826

Best wishes,
Paul

On 2/5/07, sreepriya ramakrishnan <sr...@yahoo.com> wrote:
> Hi Paul,
>
> Thank you. I was wondering where the revision
> information rev 303826 is avilable? Could you please
> mail me the link.
>
> Thanks,
> Priya
> --- Paul McMahan <pa...@gmail.com> wrote:
>
> > getId does not check to see if the session is valid
> > Tomcat 5.5.9.  In
> > Tomcat 5.5.15 the check is made (see rev 303826).
> >
> > Best wishes,
> > Paul
> >
> >
> > On 2/5/07, sreepriya ramakrishnan
> > <sr...@yahoo.com> wrote:
> > > Hi all,
> > >
> > > Please find below the summary of the problem:
> > >
> > > HttpSession objects are loaded into a HashMap in
> > the
> > > following manner.
> > >
> > > sessionMap.add(httpSession.getId(),httpSession);
> > > and when the User logs out from the system we do
> > this:
> > > httpSession.invalidate();
> > > sessionMap.remove(httpSession.getId());
> > >
> > > This used to work in Geronimo 1.0 and Tomcat
> > 5.5.9.
> > >
> > > But somehow the same thing does not work in
> > Geronimo
> > > 1.1.1 and Tomcat 5.5.15.
> > >  It says:
> > > java.lang.IllegalStateException: getId: Session
> > > already invalidated
> > >
> > > and it works if I change the code to:
> > >
> > > sessionMap.remove(httpSession.getId());
> > > httpSession.invalidate();
> > >
> > > I was wondering if there is any change in Tomcat
> > that
> > > is causing this issue.
> > >
> > > Thanks,
> > > Priya
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> > >
> >
> ____________________________________________________________________________________
> > > Do you Yahoo!?
> > > Everyone is raving about the all-new Yahoo! Mail
> > beta.
> > > http://new.mail.yahoo.com
> > >
> >
>
>
>
>
> ____________________________________________________________________________________
> Get your own web address.
> Have a HUGE year through Yahoo! Small Business.
> http://smallbusiness.yahoo.com/domains/?p=BESTDEAL
>

Re: HttpSession, Geronimo 1.0 with Tomcat 5.5.9 and geronimo 1.1.1 with Tomcat 5.5.15

Posted by sreepriya ramakrishnan <sr...@yahoo.com>.
Hi Paul,

Thank you. I was wondering where the revision
information rev 303826 is avilable? Could you please
mail me the link.

Thanks,
Priya
--- Paul McMahan <pa...@gmail.com> wrote:

> getId does not check to see if the session is valid
> Tomcat 5.5.9.  In
> Tomcat 5.5.15 the check is made (see rev 303826).
> 
> Best wishes,
> Paul
> 
> 
> On 2/5/07, sreepriya ramakrishnan
> <sr...@yahoo.com> wrote:
> > Hi all,
> >
> > Please find below the summary of the problem:
> >
> > HttpSession objects are loaded into a HashMap in
> the
> > following manner.
> >
> > sessionMap.add(httpSession.getId(),httpSession);
> > and when the User logs out from the system we do
> this:
> > httpSession.invalidate();
> > sessionMap.remove(httpSession.getId());
> >
> > This used to work in Geronimo 1.0 and Tomcat
> 5.5.9.
> >
> > But somehow the same thing does not work in
> Geronimo
> > 1.1.1 and Tomcat 5.5.15.
> >  It says:
> > java.lang.IllegalStateException: getId: Session
> > already invalidated
> >
> > and it works if I change the code to:
> >
> > sessionMap.remove(httpSession.getId());
> > httpSession.invalidate();
> >
> > I was wondering if there is any change in Tomcat
> that
> > is causing this issue.
> >
> > Thanks,
> > Priya
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
> >
>
____________________________________________________________________________________
> > Do you Yahoo!?
> > Everyone is raving about the all-new Yahoo! Mail
> beta.
> > http://new.mail.yahoo.com
> >
> 



 
____________________________________________________________________________________
Get your own web address.  
Have a HUGE year through Yahoo! Small Business.
http://smallbusiness.yahoo.com/domains/?p=BESTDEAL

Re: HttpSession, Geronimo 1.0 with Tomcat 5.5.9 and geronimo 1.1.1 with Tomcat 5.5.15

Posted by Paul McMahan <pa...@gmail.com>.
getId does not check to see if the session is valid Tomcat 5.5.9.  In
Tomcat 5.5.15 the check is made (see rev 303826).

Best wishes,
Paul


On 2/5/07, sreepriya ramakrishnan <sr...@yahoo.com> wrote:
> Hi all,
>
> Please find below the summary of the problem:
>
> HttpSession objects are loaded into a HashMap in the
> following manner.
>
> sessionMap.add(httpSession.getId(),httpSession);
> and when the User logs out from the system we do this:
> httpSession.invalidate();
> sessionMap.remove(httpSession.getId());
>
> This used to work in Geronimo 1.0 and Tomcat 5.5.9.
>
> But somehow the same thing does not work in Geronimo
> 1.1.1 and Tomcat 5.5.15.
>  It says:
> java.lang.IllegalStateException: getId: Session
> already invalidated
>
> and it works if I change the code to:
>
> sessionMap.remove(httpSession.getId());
> httpSession.invalidate();
>
> I was wondering if there is any change in Tomcat that
> is causing this issue.
>
> Thanks,
> Priya
>
>
>
>
>
>
>
>
>
>
>
>
>
> ____________________________________________________________________________________
> Do you Yahoo!?
> Everyone is raving about the all-new Yahoo! Mail beta.
> http://new.mail.yahoo.com
>

HttpSession, Geronimo 1.0 with Tomcat 5.5.9 and geronimo 1.1.1 with Tomcat 5.5.15

Posted by sreepriya ramakrishnan <sr...@yahoo.com>.
Hi all,

Please find below the summary of the problem:

HttpSession objects are loaded into a HashMap in the
following manner.

sessionMap.add(httpSession.getId(),httpSession);
and when the User logs out from the system we do this:
httpSession.invalidate();
sessionMap.remove(httpSession.getId());

This used to work in Geronimo 1.0 and Tomcat 5.5.9.

But somehow the same thing does not work in Geronimo
1.1.1 and Tomcat 5.5.15. 
 It says:
java.lang.IllegalStateException: getId: Session
already invalidated

and it works if I change the code to:

sessionMap.remove(httpSession.getId());
httpSession.invalidate();

I was wondering if there is any change in Tomcat that
is causing this issue.

Thanks,
Priya












 
____________________________________________________________________________________
Do you Yahoo!?
Everyone is raving about the all-new Yahoo! Mail beta.
http://new.mail.yahoo.com

Re: Problem creating sql-security-realm using geronimo-tomcat6-jee5-2.0-M2

Posted by Torsten Krall <tk...@tkl-soft.de>.
Hi,

jira # is GERONIMO-2799.

Best regards,
Torsten

Hernan Cunico schrieb:
> I thought the problem was coming from a different component. I just
> retested it and yes, no matter the DB you are using, this portlet is
> not retrieving the info from the DB connection pool. It's a bug.
> Let me know the JIRA # and I'll chime in with some extra info.
>
> Cheers!
> Hernan
>
> Hernan Cunico wrote:
>> great to see you find a workaround. Not sure I understand what you
>> copied and pasted though (the connection parameters one by one!?)
>>
>> Either way this seems to be a bug, could you open a JIRA for this issue?
>>
>> I'm about to test this config with different databases.
>>
>> Cheers!
>> Hernan
>>
>> Torsten Krall wrote:
>>> First I tried to select the global database-pool to be used for the
>>> security-realm via the combobox. That led to the exception within
>>> the test.
>>> Now I tried the second way:
>>> I opened the configuration of the global database-pool. Then did  I
>>> copy
>>> everything manually into the form to create the security-realm
>>> (copy&paste). This works :-)
>>>
>>> But that must be a bug. A ready configured database-pool must work.
>>>
>>> Torsten
>>>
>>>
>>>
>>> Torsten Krall schrieb:
>>>> Hi,
>>>>
>>>> thanks for your answer.
>>>>
>>>> No, I am using mysql.
>>>>
>>>> The test of the datapool-creation-wizard told me:
>>>> Test Result: Connected to MySQL 5.1.11-beta-Debian_1-log
>>>>
>>>> Seems to be correct.
>>>> This is the generated plan:
>>>>
>>>> <?xml version="1.0" encoding="UTF-8"?>
>>>> <connector
>>>> xmlns="http://geronimo.apache.org/xml/ns/j2ee/connector-1.2">
>>>>     <dep:environment
>>>> xmlns:dep="http://geronimo.apache.org/xml/ns/deployment-1.2">
>>>>         <dep:moduleId>
>>>>             <dep:groupId>console.dbpool</dep:groupId>
>>>>             <dep:artifactId>tkldienstplanpool</dep:artifactId>
>>>>             <dep:version>1.0</dep:version>
>>>>             <dep:type>rar</dep:type>
>>>>         </dep:moduleId>
>>>>         <dep:dependencies>
>>>>             <dep:dependency>
>>>>                 <dep:groupId>mysql</dep:groupId>
>>>>                 <dep:artifactId>mysql-connector-java</dep:artifactId>
>>>>                 <dep:version>3.1.12</dep:version>
>>>>                 <dep:type>jar</dep:type>
>>>>             </dep:dependency>
>>>>         </dep:dependencies>
>>>>     </dep:environment>
>>>>     <resourceadapter>
>>>>         <outbound-resourceadapter>
>>>>             <connection-definition>
>>>>               
>>>> <connectionfactory-interface>javax.sql.DataSource</connectionfactory-interface>
>>>>
>>>>                 <connectiondefinition-instance>
>>>>                     <name>tkldienstplanpool</name>
>>>>                     <config-property-setting
>>>> name="Driver">com.mysql.jdbc.Driver</config-property-setting>
>>>>                     <config-property-setting
>>>> name="Password">XXXX</config-property-setting>
>>>>                     <config-property-setting
>>>> name="UserName">XXXX</config-property-setting>
>>>>                     <config-property-setting
>>>> name="ConnectionURL">jdbc:mysql://somewhereinthesea:3306/dbuser</config-property-setting>
>>>>
>>>>                     <connectionmanager>
>>>>                         <local-transaction/>
>>>>                         <single-pool>
>>>>                             <max-size>10</max-size>
>>>>                             <min-size>0</min-size>
>>>>                             <match-one/>
>>>>                         </single-pool>
>>>>                     </connectionmanager>
>>>>                 </connectiondefinition-instance>
>>>>             </connection-definition>
>>>>         </outbound-resourceadapter>
>>>>     </resourceadapter>
>>>> </connector>
>>>>
>>>> Best regards,
>>>> Torsten
>>>>
>>>>
>>>> Hernan Cunico schrieb:
>>>>  
>>>>> Hi Torsten,
>>>>> I assume you are using the embedded Derby db, there seems to be a
>>>>> problem with the tranql connector support for the current version of
>>>>> Derby we have in that build.
>>>>>
>>>>> Plz confirm the DB you are using.
>>>>>
>>>>> Cheers!
>>>>> Hernan
>>>>>
>>>>> Torsten Krall wrote:
>>>>>   
>>>>>> Hello,
>>>>>>
>>>>>> I created and deployed a global database pool
>>>>>> "tkldienstplanpool", the
>>>>>> test worked fine.
>>>>>>
>>>>>> Now I want to use this database pool within a sql-security-realm
>>>>>> but the
>>>>>> test throws following exception:
>>>>>> java.lang.IllegalArgumentException: interface
>>>>>> org.tranql.connector.DissociatableConnectionHandle is not visible
>>>>>> from
>>>>>> class loader
>>>>>>
>>>>>> Why does the test of the database pool run fine but the
>>>>>> security-realm
>>>>>> does not work?
>>>>>>
>>>>>> Best regards,
>>>>>> Torsten Krall
>>>>>>
>>>>>> Entire stacktrace:
>>>>>>
>>>>>> 13:17:26,455 INFO  [DatabasePoolPortlet] Deployment completed
>>>>>> successfully!
>>>>>> 13:31:56,477 WARN  [SecurityRealmPortlet] Testing with options
>>>>>> {groupSelect=SELECT d1.username, d2.name as gruppe FROM
>>>>>> dp_realm_user_group d
>>>>>>  INNER JOIN dp_realm_user d1 ON d1.id=d.user INNER JOIN
>>>>>> dp_realm_group
>>>>>> d2 ON d2.id=d.group WHERE d1.username=?,
>>>>>> org.apache.geronimo.security
>>>>>> .realm.GenericSecurityRealm.CLASSLOADER=[org.apache.geronimo.kernel.classloader.JarFileClassLoader
>>>>>>
>>>>>>
>>>>>> id=org.apache.geronimo.configs/webconsole
>>>>>> -tomcat_standard.war/2.0-M2/car], dataSourceApplication=null,
>>>>>> userSelect=select username, password from dp_realm_user where
>>>>>> username=?, data
>>>>>> SourceName=tkldienstplanpool3}
>>>>>> 13:32:10,276 WARN  [SecurityRealmPortlet] Test login failed
>>>>>> javax.security.auth.login.LoginException: SQL error
>>>>>>         at
>>>>>> org.apache.geronimo.security.realm.providers.SQLLoginModule.login(SQLLoginModule.java:257)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.geronimo.console.util.KernelManagementHelper.testLoginModule(KernelManagementHelper.java:423)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.geronimo.console.util.PortletManager.testLoginModule(PortletManager.java:160)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.geronimo.console.securitymanager.realm.SecurityRealmPortlet.actionAttemptLogin(SecurityRealmPortlet.java:334)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.geronimo.console.securitymanager.realm.SecurityRealmPortlet.processAction(SecurityRealmPortlet.java:215)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.pluto.core.PortletServlet.dispatch(PortletServlet.java:229)
>>>>>>
>>>>>>         at
>>>>>> org.apache.pluto.core.PortletServlet.doGet(PortletServlet.java:158)
>>>>>>         at
>>>>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:693)
>>>>>>         at
>>>>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
>>>>>>         at
>>>>>> org.apache.pluto.core.PortletServlet.service(PortletServlet.java:153)
>>>>>>
>>>>>>         at
>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:687)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:590)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:505)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.pluto.invoker.impl.PortletInvokerImpl.invoke(PortletInvokerImpl.java:120)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.pluto.invoker.impl.PortletInvokerImpl.action(PortletInvokerImpl.java:68)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.pluto.PortletContainerImpl.processPortletAction(PortletContainerImpl.java:164)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.pluto.portalImpl.core.PortletContainerWrapperImpl.processPortletAction(PortletContainerWrapperImpl.java:82)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.pluto.portalImpl.Servlet.doGet(Servlet.java:227)
>>>>>>         at
>>>>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:693)
>>>>>>         at
>>>>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
>>>>>>         at
>>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:228)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.geronimo.tomcat.valve.DefaultSubjectValve.invoke(DefaultSubjectValve.java:56)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.geronimo.tomcat.GeronimoStandardContext$SystemMethodValve.invoke(GeronimoStandardContext.java:338)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.geronimo.tomcat.valve.GeronimoBeforeAfterValve.invoke(GeronimoBeforeAfterValve.java:47)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:517)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:212)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:634)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:445)
>>>>>>
>>>>>>         at java.lang.Thread.run(Thread.java:619)
>>>>>> Caused by: java.sql.SQLException
>>>>>>         at
>>>>>> org.tranql.connector.jdbc.DataSource.getConnection(DataSource.java:61)
>>>>>>
>>>>>>         at
>>>>>> $javax.sql.DataSource$$FastClassByCGLIB$$6525cafd.invoke(<generated>)
>>>>>>
>>>>>>         at
>>>>>> net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
>>>>>>         at
>>>>>> org.apache.geronimo.connector.ConnectorMethodInterceptor.intercept(ConnectorMethodInterceptor.java:54)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> $javax.sql.DataSource$$EnhancerByCGLIB$$8b609c1.getConnection(<generated>)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.geronimo.security.realm.providers.SQLLoginModule.login(SQLLoginModule.java:194)
>>>>>>
>>>>>>
>>>>>>         ... 38 more
>>>>>> Caused by: javax.resource.ResourceException: Unable to construct
>>>>>> connection proxy
>>>>>>         at
>>>>>> org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator.proxyConnection(ConnectionTrackingCoordin
>>>>>>
>>>>>>
>>>>>> ator.java:238)
>>>>>>         at
>>>>>> org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator.handleObtained(ConnectionTrackingCoordina
>>>>>>
>>>>>>
>>>>>> tor.java:157)
>>>>>>         at
>>>>>> org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator$$FastClassByCGLIB$$5d33aabf.invoke(<gener
>>>>>>
>>>>>>
>>>>>> ated>)
>>>>>>         at
>>>>>> net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>>>>>>         at
>>>>>> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:127)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:820)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57)
>>>>>>
>>>>>>         at
>>>>>> org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:35)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.geronimo.gbean.GBeanLifecycle$$EnhancerByCGLIB$$51d42e0c.handleObtained(<generated>)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.geronimo.connector.outbound.ConnectionTrackingInterceptor.getConnection(ConnectionTrackingInterceptor.java:67)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.apache.geronimo.connector.outbound.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:61)
>>>>>>
>>>>>>
>>>>>>         at
>>>>>> org.tranql.connector.jdbc.DataSource.getConnection(DataSource.java:56)
>>>>>>
>>>>>>         ... 43 more
>>>>>> Caused by: java.lang.IllegalArgumentException: interface
>>>>>> org.tranql.connector.DissociatableConnectionHandle is not visible
>>>>>> from
>>>>>> class loader
>>>>>>
>>>>>>         at java.lang.reflect.Proxy.getProxyClass(Proxy.java:353)
>>>>>>         at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:581)
>>>>>>         at
>>>>>> org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator.proxyConnection(ConnectionTrackingCoordin
>>>>>>
>>>>>>
>>>>>> ator.java:230)
>>>>>>         ... 56 more
>>>>>>
>>>>>>       
>>>>   
>>>
>>>
>>
>


Re: Problem creating sql-security-realm using geronimo-tomcat6-jee5-2.0-M2

Posted by Hernan Cunico <hc...@gmail.com>.
I thought the problem was coming from a different component. 
I just retested it and yes, no matter the DB you are using, this portlet is not retrieving the info from the DB connection pool. It's a bug.
Let me know the JIRA # and I'll chime in with some extra info.

Cheers!
Hernan

Hernan Cunico wrote:
> great to see you find a workaround. Not sure I understand what you 
> copied and pasted though (the connection parameters one by one!?)
> 
> Either way this seems to be a bug, could you open a JIRA for this issue?
> 
> I'm about to test this config with different databases.
> 
> Cheers!
> Hernan
> 
> Torsten Krall wrote:
>> First I tried to select the global database-pool to be used for the
>> security-realm via the combobox. That led to the exception within the 
>> test.
>> Now I tried the second way:
>> I opened the configuration of the global database-pool. Then did  I copy
>> everything manually into the form to create the security-realm
>> (copy&paste). This works :-)
>>
>> But that must be a bug. A ready configured database-pool must work.
>>
>> Torsten
>>
>>
>>
>> Torsten Krall schrieb:
>>> Hi,
>>>
>>> thanks for your answer.
>>>
>>> No, I am using mysql.
>>>
>>> The test of the datapool-creation-wizard told me:
>>> Test Result: Connected to MySQL 5.1.11-beta-Debian_1-log
>>>
>>> Seems to be correct.
>>> This is the generated plan:
>>>
>>> <?xml version="1.0" encoding="UTF-8"?>
>>> <connector xmlns="http://geronimo.apache.org/xml/ns/j2ee/connector-1.2">
>>>     <dep:environment
>>> xmlns:dep="http://geronimo.apache.org/xml/ns/deployment-1.2">
>>>         <dep:moduleId>
>>>             <dep:groupId>console.dbpool</dep:groupId>
>>>             <dep:artifactId>tkldienstplanpool</dep:artifactId>
>>>             <dep:version>1.0</dep:version>
>>>             <dep:type>rar</dep:type>
>>>         </dep:moduleId>
>>>         <dep:dependencies>
>>>             <dep:dependency>
>>>                 <dep:groupId>mysql</dep:groupId>
>>>                 <dep:artifactId>mysql-connector-java</dep:artifactId>
>>>                 <dep:version>3.1.12</dep:version>
>>>                 <dep:type>jar</dep:type>
>>>             </dep:dependency>
>>>         </dep:dependencies>
>>>     </dep:environment>
>>>     <resourceadapter>
>>>         <outbound-resourceadapter>
>>>             <connection-definition>
>>>                
>>> <connectionfactory-interface>javax.sql.DataSource</connectionfactory-interface> 
>>>
>>>                 <connectiondefinition-instance>
>>>                     <name>tkldienstplanpool</name>
>>>                     <config-property-setting
>>> name="Driver">com.mysql.jdbc.Driver</config-property-setting>
>>>                     <config-property-setting
>>> name="Password">XXXX</config-property-setting>
>>>                     <config-property-setting
>>> name="UserName">XXXX</config-property-setting>
>>>                     <config-property-setting
>>> name="ConnectionURL">jdbc:mysql://somewhereinthesea:3306/dbuser</config-property-setting> 
>>>
>>>                     <connectionmanager>
>>>                         <local-transaction/>
>>>                         <single-pool>
>>>                             <max-size>10</max-size>
>>>                             <min-size>0</min-size>
>>>                             <match-one/>
>>>                         </single-pool>
>>>                     </connectionmanager>
>>>                 </connectiondefinition-instance>
>>>             </connection-definition>
>>>         </outbound-resourceadapter>
>>>     </resourceadapter>
>>> </connector>
>>>
>>> Best regards,
>>> Torsten
>>>
>>>
>>> Hernan Cunico schrieb:
>>>  
>>>> Hi Torsten,
>>>> I assume you are using the embedded Derby db, there seems to be a
>>>> problem with the tranql connector support for the current version of
>>>> Derby we have in that build.
>>>>
>>>> Plz confirm the DB you are using.
>>>>
>>>> Cheers!
>>>> Hernan
>>>>
>>>> Torsten Krall wrote:
>>>>    
>>>>> Hello,
>>>>>
>>>>> I created and deployed a global database pool "tkldienstplanpool", the
>>>>> test worked fine.
>>>>>
>>>>> Now I want to use this database pool within a sql-security-realm 
>>>>> but the
>>>>> test throws following exception:
>>>>> java.lang.IllegalArgumentException: interface
>>>>> org.tranql.connector.DissociatableConnectionHandle is not visible from
>>>>> class loader
>>>>>
>>>>> Why does the test of the database pool run fine but the security-realm
>>>>> does not work?
>>>>>
>>>>> Best regards,
>>>>> Torsten Krall
>>>>>
>>>>> Entire stacktrace:
>>>>>
>>>>> 13:17:26,455 INFO  [DatabasePoolPortlet] Deployment completed
>>>>> successfully!
>>>>> 13:31:56,477 WARN  [SecurityRealmPortlet] Testing with options
>>>>> {groupSelect=SELECT d1.username, d2.name as gruppe FROM
>>>>> dp_realm_user_group d
>>>>>  INNER JOIN dp_realm_user d1 ON d1.id=d.user INNER JOIN dp_realm_group
>>>>> d2 ON d2.id=d.group WHERE d1.username=?, org.apache.geronimo.security
>>>>> .realm.GenericSecurityRealm.CLASSLOADER=[org.apache.geronimo.kernel.classloader.JarFileClassLoader 
>>>>>
>>>>>
>>>>> id=org.apache.geronimo.configs/webconsole
>>>>> -tomcat_standard.war/2.0-M2/car], dataSourceApplication=null,
>>>>> userSelect=select username, password from dp_realm_user where
>>>>> username=?, data
>>>>> SourceName=tkldienstplanpool3}
>>>>> 13:32:10,276 WARN  [SecurityRealmPortlet] Test login failed
>>>>> javax.security.auth.login.LoginException: SQL error
>>>>>         at
>>>>> org.apache.geronimo.security.realm.providers.SQLLoginModule.login(SQLLoginModule.java:257) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.geronimo.console.util.KernelManagementHelper.testLoginModule(KernelManagementHelper.java:423) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.geronimo.console.util.PortletManager.testLoginModule(PortletManager.java:160) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.geronimo.console.securitymanager.realm.SecurityRealmPortlet.actionAttemptLogin(SecurityRealmPortlet.java:334) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.geronimo.console.securitymanager.realm.SecurityRealmPortlet.processAction(SecurityRealmPortlet.java:215) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.pluto.core.PortletServlet.dispatch(PortletServlet.java:229)
>>>>>         at
>>>>> org.apache.pluto.core.PortletServlet.doGet(PortletServlet.java:158)
>>>>>         at 
>>>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:693)
>>>>>         at 
>>>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
>>>>>         at
>>>>> org.apache.pluto.core.PortletServlet.service(PortletServlet.java:153)
>>>>>         at
>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:687) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:590) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:505) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.pluto.invoker.impl.PortletInvokerImpl.invoke(PortletInvokerImpl.java:120) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.pluto.invoker.impl.PortletInvokerImpl.action(PortletInvokerImpl.java:68) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.pluto.PortletContainerImpl.processPortletAction(PortletContainerImpl.java:164) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.pluto.portalImpl.core.PortletContainerWrapperImpl.processPortletAction(PortletContainerWrapperImpl.java:82) 
>>>>>
>>>>>
>>>>>         at org.apache.pluto.portalImpl.Servlet.doGet(Servlet.java:227)
>>>>>         at 
>>>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:693)
>>>>>         at 
>>>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
>>>>>         at
>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:228) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.geronimo.tomcat.valve.DefaultSubjectValve.invoke(DefaultSubjectValve.java:56) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.geronimo.tomcat.GeronimoStandardContext$SystemMethodValve.invoke(GeronimoStandardContext.java:338) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.geronimo.tomcat.valve.GeronimoBeforeAfterValve.invoke(GeronimoBeforeAfterValve.java:47) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:517) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:212) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:634) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:445) 
>>>>>
>>>>>         at java.lang.Thread.run(Thread.java:619)
>>>>> Caused by: java.sql.SQLException
>>>>>         at
>>>>> org.tranql.connector.jdbc.DataSource.getConnection(DataSource.java:61)
>>>>>         at
>>>>> $javax.sql.DataSource$$FastClassByCGLIB$$6525cafd.invoke(<generated>)
>>>>>         at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
>>>>>         at
>>>>> org.apache.geronimo.connector.ConnectorMethodInterceptor.intercept(ConnectorMethodInterceptor.java:54) 
>>>>>
>>>>>
>>>>>         at
>>>>> $javax.sql.DataSource$$EnhancerByCGLIB$$8b609c1.getConnection(<generated>) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.geronimo.security.realm.providers.SQLLoginModule.login(SQLLoginModule.java:194) 
>>>>>
>>>>>
>>>>>         ... 38 more
>>>>> Caused by: javax.resource.ResourceException: Unable to construct
>>>>> connection proxy
>>>>>         at
>>>>> org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator.proxyConnection(ConnectionTrackingCoordin 
>>>>>
>>>>>
>>>>> ator.java:238)
>>>>>         at
>>>>> org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator.handleObtained(ConnectionTrackingCoordina 
>>>>>
>>>>>
>>>>> tor.java:157)
>>>>>         at
>>>>> org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator$$FastClassByCGLIB$$5d33aabf.invoke(<gener 
>>>>>
>>>>>
>>>>> ated>)
>>>>>         at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>>>>>         at
>>>>> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:127) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:820) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57) 
>>>>>
>>>>>         at
>>>>> org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:35) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.geronimo.gbean.GBeanLifecycle$$EnhancerByCGLIB$$51d42e0c.handleObtained(<generated>) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.geronimo.connector.outbound.ConnectionTrackingInterceptor.getConnection(ConnectionTrackingInterceptor.java:67) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.geronimo.connector.outbound.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:61) 
>>>>>
>>>>>
>>>>>         at
>>>>> org.tranql.connector.jdbc.DataSource.getConnection(DataSource.java:56)
>>>>>         ... 43 more
>>>>> Caused by: java.lang.IllegalArgumentException: interface
>>>>> org.tranql.connector.DissociatableConnectionHandle is not visible from
>>>>> class loader
>>>>>
>>>>>         at java.lang.reflect.Proxy.getProxyClass(Proxy.java:353)
>>>>>         at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:581)
>>>>>         at
>>>>> org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator.proxyConnection(ConnectionTrackingCoordin 
>>>>>
>>>>>
>>>>> ator.java:230)
>>>>>         ... 56 more
>>>>>
>>>>>       
>>>   
>>
>>
> 

Re: Problem creating sql-security-realm using geronimo-tomcat6-jee5-2.0-M2

Posted by Torsten Krall <tk...@tkl-soft.de>.
Yes, I copied the parameters one by one.
I will open a JIRA.

Thanks,
Torsten


Hernan Cunico schrieb:
> great to see you find a workaround. Not sure I understand what you
> copied and pasted though (the connection parameters one by one!?)
>
> Either way this seems to be a bug, could you open a JIRA for this issue?
>
> I'm about to test this config with different databases.
>
> Cheers!
> Hernan
>
> Torsten Krall wrote:
>> First I tried to select the global database-pool to be used for the
>> security-realm via the combobox. That led to the exception within the
>> test.
>> Now I tried the second way:
>> I opened the configuration of the global database-pool. Then did  I copy
>> everything manually into the form to create the security-realm
>> (copy&paste). This works :-)
>>
>> But that must be a bug. A ready configured database-pool must work.
>>
>> Torsten
>>
>>
>>
>> Torsten Krall schrieb:
>>> Hi,
>>>
>>> thanks for your answer.
>>>
>>> No, I am using mysql.
>>>
>>> The test of the datapool-creation-wizard told me:
>>> Test Result: Connected to MySQL 5.1.11-beta-Debian_1-log
>>>
>>> Seems to be correct.
>>> This is the generated plan:
>>>
>>> <?xml version="1.0" encoding="UTF-8"?>
>>> <connector
>>> xmlns="http://geronimo.apache.org/xml/ns/j2ee/connector-1.2">
>>>     <dep:environment
>>> xmlns:dep="http://geronimo.apache.org/xml/ns/deployment-1.2">
>>>         <dep:moduleId>
>>>             <dep:groupId>console.dbpool</dep:groupId>
>>>             <dep:artifactId>tkldienstplanpool</dep:artifactId>
>>>             <dep:version>1.0</dep:version>
>>>             <dep:type>rar</dep:type>
>>>         </dep:moduleId>
>>>         <dep:dependencies>
>>>             <dep:dependency>
>>>                 <dep:groupId>mysql</dep:groupId>
>>>                 <dep:artifactId>mysql-connector-java</dep:artifactId>
>>>                 <dep:version>3.1.12</dep:version>
>>>                 <dep:type>jar</dep:type>
>>>             </dep:dependency>
>>>         </dep:dependencies>
>>>     </dep:environment>
>>>     <resourceadapter>
>>>         <outbound-resourceadapter>
>>>             <connection-definition>
>>>               
>>> <connectionfactory-interface>javax.sql.DataSource</connectionfactory-interface>
>>>
>>>                 <connectiondefinition-instance>
>>>                     <name>tkldienstplanpool</name>
>>>                     <config-property-setting
>>> name="Driver">com.mysql.jdbc.Driver</config-property-setting>
>>>                     <config-property-setting
>>> name="Password">XXXX</config-property-setting>
>>>                     <config-property-setting
>>> name="UserName">XXXX</config-property-setting>
>>>                     <config-property-setting
>>> name="ConnectionURL">jdbc:mysql://somewhereinthesea:3306/dbuser</config-property-setting>
>>>
>>>                     <connectionmanager>
>>>                         <local-transaction/>
>>>                         <single-pool>
>>>                             <max-size>10</max-size>
>>>                             <min-size>0</min-size>
>>>                             <match-one/>
>>>                         </single-pool>
>>>                     </connectionmanager>
>>>                 </connectiondefinition-instance>
>>>             </connection-definition>
>>>         </outbound-resourceadapter>
>>>     </resourceadapter>
>>> </connector>
>>>
>>> Best regards,
>>> Torsten
>>>
>>>
>>> Hernan Cunico schrieb:
>>>  
>>>> Hi Torsten,
>>>> I assume you are using the embedded Derby db, there seems to be a
>>>> problem with the tranql connector support for the current version of
>>>> Derby we have in that build.
>>>>
>>>> Plz confirm the DB you are using.
>>>>
>>>> Cheers!
>>>> Hernan
>>>>
>>>> Torsten Krall wrote:
>>>>    
>>>>> Hello,
>>>>>
>>>>> I created and deployed a global database pool "tkldienstplanpool",
>>>>> the
>>>>> test worked fine.
>>>>>
>>>>> Now I want to use this database pool within a sql-security-realm
>>>>> but the
>>>>> test throws following exception:
>>>>> java.lang.IllegalArgumentException: interface
>>>>> org.tranql.connector.DissociatableConnectionHandle is not visible
>>>>> from
>>>>> class loader
>>>>>
>>>>> Why does the test of the database pool run fine but the
>>>>> security-realm
>>>>> does not work?
>>>>>
>>>>> Best regards,
>>>>> Torsten Krall
>>>>>
>>>>> Entire stacktrace:
>>>>>
>>>>> 13:17:26,455 INFO  [DatabasePoolPortlet] Deployment completed
>>>>> successfully!
>>>>> 13:31:56,477 WARN  [SecurityRealmPortlet] Testing with options
>>>>> {groupSelect=SELECT d1.username, d2.name as gruppe FROM
>>>>> dp_realm_user_group d
>>>>>  INNER JOIN dp_realm_user d1 ON d1.id=d.user INNER JOIN
>>>>> dp_realm_group
>>>>> d2 ON d2.id=d.group WHERE d1.username=?, org.apache.geronimo.security
>>>>> .realm.GenericSecurityRealm.CLASSLOADER=[org.apache.geronimo.kernel.classloader.JarFileClassLoader
>>>>>
>>>>>
>>>>> id=org.apache.geronimo.configs/webconsole
>>>>> -tomcat_standard.war/2.0-M2/car], dataSourceApplication=null,
>>>>> userSelect=select username, password from dp_realm_user where
>>>>> username=?, data
>>>>> SourceName=tkldienstplanpool3}
>>>>> 13:32:10,276 WARN  [SecurityRealmPortlet] Test login failed
>>>>> javax.security.auth.login.LoginException: SQL error
>>>>>         at
>>>>> org.apache.geronimo.security.realm.providers.SQLLoginModule.login(SQLLoginModule.java:257)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.geronimo.console.util.KernelManagementHelper.testLoginModule(KernelManagementHelper.java:423)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.geronimo.console.util.PortletManager.testLoginModule(PortletManager.java:160)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.geronimo.console.securitymanager.realm.SecurityRealmPortlet.actionAttemptLogin(SecurityRealmPortlet.java:334)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.geronimo.console.securitymanager.realm.SecurityRealmPortlet.processAction(SecurityRealmPortlet.java:215)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.pluto.core.PortletServlet.dispatch(PortletServlet.java:229)
>>>>>
>>>>>         at
>>>>> org.apache.pluto.core.PortletServlet.doGet(PortletServlet.java:158)
>>>>>         at
>>>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:693)
>>>>>         at
>>>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
>>>>>         at
>>>>> org.apache.pluto.core.PortletServlet.service(PortletServlet.java:153)
>>>>>         at
>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:687)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:590)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:505)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.pluto.invoker.impl.PortletInvokerImpl.invoke(PortletInvokerImpl.java:120)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.pluto.invoker.impl.PortletInvokerImpl.action(PortletInvokerImpl.java:68)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.pluto.PortletContainerImpl.processPortletAction(PortletContainerImpl.java:164)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.pluto.portalImpl.core.PortletContainerWrapperImpl.processPortletAction(PortletContainerWrapperImpl.java:82)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.pluto.portalImpl.Servlet.doGet(Servlet.java:227)
>>>>>         at
>>>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:693)
>>>>>         at
>>>>> javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
>>>>>         at
>>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:228)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.geronimo.tomcat.valve.DefaultSubjectValve.invoke(DefaultSubjectValve.java:56)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.geronimo.tomcat.GeronimoStandardContext$SystemMethodValve.invoke(GeronimoStandardContext.java:338)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.geronimo.tomcat.valve.GeronimoBeforeAfterValve.invoke(GeronimoBeforeAfterValve.java:47)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:517)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:212)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:634)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:445)
>>>>>
>>>>>         at java.lang.Thread.run(Thread.java:619)
>>>>> Caused by: java.sql.SQLException
>>>>>         at
>>>>> org.tranql.connector.jdbc.DataSource.getConnection(DataSource.java:61)
>>>>>
>>>>>         at
>>>>> $javax.sql.DataSource$$FastClassByCGLIB$$6525cafd.invoke(<generated>)
>>>>>         at
>>>>> net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
>>>>>         at
>>>>> org.apache.geronimo.connector.ConnectorMethodInterceptor.intercept(ConnectorMethodInterceptor.java:54)
>>>>>
>>>>>
>>>>>         at
>>>>> $javax.sql.DataSource$$EnhancerByCGLIB$$8b609c1.getConnection(<generated>)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.geronimo.security.realm.providers.SQLLoginModule.login(SQLLoginModule.java:194)
>>>>>
>>>>>
>>>>>         ... 38 more
>>>>> Caused by: javax.resource.ResourceException: Unable to construct
>>>>> connection proxy
>>>>>         at
>>>>> org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator.proxyConnection(ConnectionTrackingCoordin
>>>>>
>>>>>
>>>>> ator.java:238)
>>>>>         at
>>>>> org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator.handleObtained(ConnectionTrackingCoordina
>>>>>
>>>>>
>>>>> tor.java:157)
>>>>>         at
>>>>> org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator$$FastClassByCGLIB$$5d33aabf.invoke(<gener
>>>>>
>>>>>
>>>>> ated>)
>>>>>         at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>>>>>         at
>>>>> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:127)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:820)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57)
>>>>>
>>>>>         at
>>>>> org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:35)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.geronimo.gbean.GBeanLifecycle$$EnhancerByCGLIB$$51d42e0c.handleObtained(<generated>)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.geronimo.connector.outbound.ConnectionTrackingInterceptor.getConnection(ConnectionTrackingInterceptor.java:67)
>>>>>
>>>>>
>>>>>         at
>>>>> org.apache.geronimo.connector.outbound.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:61)
>>>>>
>>>>>
>>>>>         at
>>>>> org.tranql.connector.jdbc.DataSource.getConnection(DataSource.java:56)
>>>>>
>>>>>         ... 43 more
>>>>> Caused by: java.lang.IllegalArgumentException: interface
>>>>> org.tranql.connector.DissociatableConnectionHandle is not visible
>>>>> from
>>>>> class loader
>>>>>
>>>>>         at java.lang.reflect.Proxy.getProxyClass(Proxy.java:353)
>>>>>         at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:581)
>>>>>         at
>>>>> org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator.proxyConnection(ConnectionTrackingCoordin
>>>>>
>>>>>
>>>>> ator.java:230)
>>>>>         ... 56 more
>>>>>
>>>>>       
>>>   
>>
>>
>


Re: Problem creating sql-security-realm using geronimo-tomcat6-jee5-2.0-M2

Posted by Hernan Cunico <hc...@gmail.com>.
great to see you find a workaround. Not sure I understand what you copied and pasted though (the connection parameters one by one!?)

Either way this seems to be a bug, could you open a JIRA for this issue?

I'm about to test this config with different databases.

Cheers!
Hernan

Torsten Krall wrote:
> First I tried to select the global database-pool to be used for the
> security-realm via the combobox. That led to the exception within the test.
> Now I tried the second way:
> I opened the configuration of the global database-pool. Then did  I copy
> everything manually into the form to create the security-realm
> (copy&paste). This works :-)
> 
> But that must be a bug. A ready configured database-pool must work.
> 
> Torsten
> 
> 
> 
> Torsten Krall schrieb:
>> Hi,
>>
>> thanks for your answer.
>>
>> No, I am using mysql.
>>
>> The test of the datapool-creation-wizard told me:
>> Test Result: Connected to MySQL 5.1.11-beta-Debian_1-log
>>
>> Seems to be correct.
>> This is the generated plan:
>>
>> <?xml version="1.0" encoding="UTF-8"?>
>> <connector xmlns="http://geronimo.apache.org/xml/ns/j2ee/connector-1.2">
>>     <dep:environment
>> xmlns:dep="http://geronimo.apache.org/xml/ns/deployment-1.2">
>>         <dep:moduleId>
>>             <dep:groupId>console.dbpool</dep:groupId>
>>             <dep:artifactId>tkldienstplanpool</dep:artifactId>
>>             <dep:version>1.0</dep:version>
>>             <dep:type>rar</dep:type>
>>         </dep:moduleId>
>>         <dep:dependencies>
>>             <dep:dependency>
>>                 <dep:groupId>mysql</dep:groupId>
>>                 <dep:artifactId>mysql-connector-java</dep:artifactId>
>>                 <dep:version>3.1.12</dep:version>
>>                 <dep:type>jar</dep:type>
>>             </dep:dependency>
>>         </dep:dependencies>
>>     </dep:environment>
>>     <resourceadapter>
>>         <outbound-resourceadapter>
>>             <connection-definition>
>>                
>> <connectionfactory-interface>javax.sql.DataSource</connectionfactory-interface>
>>                 <connectiondefinition-instance>
>>                     <name>tkldienstplanpool</name>
>>                     <config-property-setting
>> name="Driver">com.mysql.jdbc.Driver</config-property-setting>
>>                     <config-property-setting
>> name="Password">XXXX</config-property-setting>
>>                     <config-property-setting
>> name="UserName">XXXX</config-property-setting>
>>                     <config-property-setting
>> name="ConnectionURL">jdbc:mysql://somewhereinthesea:3306/dbuser</config-property-setting>
>>                     <connectionmanager>
>>                         <local-transaction/>
>>                         <single-pool>
>>                             <max-size>10</max-size>
>>                             <min-size>0</min-size>
>>                             <match-one/>
>>                         </single-pool>
>>                     </connectionmanager>
>>                 </connectiondefinition-instance>
>>             </connection-definition>
>>         </outbound-resourceadapter>
>>     </resourceadapter>
>> </connector>
>>
>> Best regards,
>> Torsten
>>
>>
>> Hernan Cunico schrieb:
>>   
>>> Hi Torsten,
>>> I assume you are using the embedded Derby db, there seems to be a
>>> problem with the tranql connector support for the current version of
>>> Derby we have in that build.
>>>
>>> Plz confirm the DB you are using.
>>>
>>> Cheers!
>>> Hernan
>>>
>>> Torsten Krall wrote:
>>>     
>>>> Hello,
>>>>
>>>> I created and deployed a global database pool "tkldienstplanpool", the
>>>> test worked fine.
>>>>
>>>> Now I want to use this database pool within a sql-security-realm but the
>>>> test throws following exception:
>>>> java.lang.IllegalArgumentException: interface
>>>> org.tranql.connector.DissociatableConnectionHandle is not visible from
>>>> class loader
>>>>
>>>> Why does the test of the database pool run fine but the security-realm
>>>> does not work?
>>>>
>>>> Best regards,
>>>> Torsten Krall
>>>>
>>>> Entire stacktrace:
>>>>
>>>> 13:17:26,455 INFO  [DatabasePoolPortlet] Deployment completed
>>>> successfully!
>>>> 13:31:56,477 WARN  [SecurityRealmPortlet] Testing with options
>>>> {groupSelect=SELECT d1.username, d2.name as gruppe FROM
>>>> dp_realm_user_group d
>>>>  INNER JOIN dp_realm_user d1 ON d1.id=d.user INNER JOIN dp_realm_group
>>>> d2 ON d2.id=d.group WHERE d1.username=?, org.apache.geronimo.security
>>>> .realm.GenericSecurityRealm.CLASSLOADER=[org.apache.geronimo.kernel.classloader.JarFileClassLoader
>>>>
>>>> id=org.apache.geronimo.configs/webconsole
>>>> -tomcat_standard.war/2.0-M2/car], dataSourceApplication=null,
>>>> userSelect=select username, password from dp_realm_user where
>>>> username=?, data
>>>> SourceName=tkldienstplanpool3}
>>>> 13:32:10,276 WARN  [SecurityRealmPortlet] Test login failed
>>>> javax.security.auth.login.LoginException: SQL error
>>>>         at
>>>> org.apache.geronimo.security.realm.providers.SQLLoginModule.login(SQLLoginModule.java:257)
>>>>
>>>>         at
>>>> org.apache.geronimo.console.util.KernelManagementHelper.testLoginModule(KernelManagementHelper.java:423)
>>>>
>>>>         at
>>>> org.apache.geronimo.console.util.PortletManager.testLoginModule(PortletManager.java:160)
>>>>
>>>>         at
>>>> org.apache.geronimo.console.securitymanager.realm.SecurityRealmPortlet.actionAttemptLogin(SecurityRealmPortlet.java:334)
>>>>
>>>>         at
>>>> org.apache.geronimo.console.securitymanager.realm.SecurityRealmPortlet.processAction(SecurityRealmPortlet.java:215)
>>>>
>>>>         at
>>>> org.apache.pluto.core.PortletServlet.dispatch(PortletServlet.java:229)
>>>>         at
>>>> org.apache.pluto.core.PortletServlet.doGet(PortletServlet.java:158)
>>>>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:693)
>>>>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
>>>>         at
>>>> org.apache.pluto.core.PortletServlet.service(PortletServlet.java:153)
>>>>         at
>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>>>>
>>>>         at
>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>>>>
>>>>         at
>>>> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:687)
>>>>
>>>>         at
>>>> org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:590)
>>>>
>>>>         at
>>>> org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:505)
>>>>
>>>>         at
>>>> org.apache.pluto.invoker.impl.PortletInvokerImpl.invoke(PortletInvokerImpl.java:120)
>>>>
>>>>         at
>>>> org.apache.pluto.invoker.impl.PortletInvokerImpl.action(PortletInvokerImpl.java:68)
>>>>
>>>>         at
>>>> org.apache.pluto.PortletContainerImpl.processPortletAction(PortletContainerImpl.java:164)
>>>>
>>>>         at
>>>> org.apache.pluto.portalImpl.core.PortletContainerWrapperImpl.processPortletAction(PortletContainerWrapperImpl.java:82)
>>>>
>>>>         at org.apache.pluto.portalImpl.Servlet.doGet(Servlet.java:227)
>>>>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:693)
>>>>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
>>>>         at
>>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>>>>
>>>>         at
>>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>>>>
>>>>         at
>>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:228)
>>>>
>>>>         at
>>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
>>>>
>>>>         at
>>>> org.apache.geronimo.tomcat.valve.DefaultSubjectValve.invoke(DefaultSubjectValve.java:56)
>>>>
>>>>         at
>>>> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)
>>>>
>>>>         at
>>>> org.apache.geronimo.tomcat.GeronimoStandardContext$SystemMethodValve.invoke(GeronimoStandardContext.java:338)
>>>>
>>>>         at
>>>> org.apache.geronimo.tomcat.valve.GeronimoBeforeAfterValve.invoke(GeronimoBeforeAfterValve.java:47)
>>>>
>>>>         at
>>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
>>>>
>>>>         at
>>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
>>>>
>>>>         at
>>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>>>>
>>>>         at
>>>> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:517)
>>>>
>>>>         at
>>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:212)
>>>>
>>>>         at
>>>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
>>>>
>>>>         at
>>>> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:634)
>>>>
>>>>         at
>>>> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:445)
>>>>         at java.lang.Thread.run(Thread.java:619)
>>>> Caused by: java.sql.SQLException
>>>>         at
>>>> org.tranql.connector.jdbc.DataSource.getConnection(DataSource.java:61)
>>>>         at
>>>> $javax.sql.DataSource$$FastClassByCGLIB$$6525cafd.invoke(<generated>)
>>>>         at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
>>>>         at
>>>> org.apache.geronimo.connector.ConnectorMethodInterceptor.intercept(ConnectorMethodInterceptor.java:54)
>>>>
>>>>         at
>>>> $javax.sql.DataSource$$EnhancerByCGLIB$$8b609c1.getConnection(<generated>)
>>>>
>>>>         at
>>>> org.apache.geronimo.security.realm.providers.SQLLoginModule.login(SQLLoginModule.java:194)
>>>>
>>>>         ... 38 more
>>>> Caused by: javax.resource.ResourceException: Unable to construct
>>>> connection proxy
>>>>         at
>>>> org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator.proxyConnection(ConnectionTrackingCoordin
>>>>
>>>> ator.java:238)
>>>>         at
>>>> org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator.handleObtained(ConnectionTrackingCoordina
>>>>
>>>> tor.java:157)
>>>>         at
>>>> org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator$$FastClassByCGLIB$$5d33aabf.invoke(<gener
>>>>
>>>> ated>)
>>>>         at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>>>>         at
>>>> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
>>>>
>>>>         at
>>>> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:127)
>>>>
>>>>         at
>>>> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:820)
>>>>
>>>>         at
>>>> org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57)
>>>>         at
>>>> org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:35)
>>>>
>>>>         at
>>>> org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96)
>>>>
>>>>         at
>>>> org.apache.geronimo.gbean.GBeanLifecycle$$EnhancerByCGLIB$$51d42e0c.handleObtained(<generated>)
>>>>
>>>>         at
>>>> org.apache.geronimo.connector.outbound.ConnectionTrackingInterceptor.getConnection(ConnectionTrackingInterceptor.java:67)
>>>>
>>>>         at
>>>> org.apache.geronimo.connector.outbound.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:61)
>>>>
>>>>         at
>>>> org.tranql.connector.jdbc.DataSource.getConnection(DataSource.java:56)
>>>>         ... 43 more
>>>> Caused by: java.lang.IllegalArgumentException: interface
>>>> org.tranql.connector.DissociatableConnectionHandle is not visible from
>>>> class loader
>>>>
>>>>         at java.lang.reflect.Proxy.getProxyClass(Proxy.java:353)
>>>>         at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:581)
>>>>         at
>>>> org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator.proxyConnection(ConnectionTrackingCoordin
>>>>
>>>> ator.java:230)
>>>>         ... 56 more
>>>>
>>>>       
>>   
> 
> 

Re: Problem creating sql-security-realm using geronimo-tomcat6-jee5-2.0-M2

Posted by Torsten Krall <tk...@tkl-soft.de>.
First I tried to select the global database-pool to be used for the
security-realm via the combobox. That led to the exception within the test.
Now I tried the second way:
I opened the configuration of the global database-pool. Then did  I copy
everything manually into the form to create the security-realm
(copy&paste). This works :-)

But that must be a bug. A ready configured database-pool must work.

Torsten



Torsten Krall schrieb:
> Hi,
>
> thanks for your answer.
>
> No, I am using mysql.
>
> The test of the datapool-creation-wizard told me:
> Test Result: Connected to MySQL 5.1.11-beta-Debian_1-log
>
> Seems to be correct.
> This is the generated plan:
>
> <?xml version="1.0" encoding="UTF-8"?>
> <connector xmlns="http://geronimo.apache.org/xml/ns/j2ee/connector-1.2">
>     <dep:environment
> xmlns:dep="http://geronimo.apache.org/xml/ns/deployment-1.2">
>         <dep:moduleId>
>             <dep:groupId>console.dbpool</dep:groupId>
>             <dep:artifactId>tkldienstplanpool</dep:artifactId>
>             <dep:version>1.0</dep:version>
>             <dep:type>rar</dep:type>
>         </dep:moduleId>
>         <dep:dependencies>
>             <dep:dependency>
>                 <dep:groupId>mysql</dep:groupId>
>                 <dep:artifactId>mysql-connector-java</dep:artifactId>
>                 <dep:version>3.1.12</dep:version>
>                 <dep:type>jar</dep:type>
>             </dep:dependency>
>         </dep:dependencies>
>     </dep:environment>
>     <resourceadapter>
>         <outbound-resourceadapter>
>             <connection-definition>
>                
> <connectionfactory-interface>javax.sql.DataSource</connectionfactory-interface>
>                 <connectiondefinition-instance>
>                     <name>tkldienstplanpool</name>
>                     <config-property-setting
> name="Driver">com.mysql.jdbc.Driver</config-property-setting>
>                     <config-property-setting
> name="Password">XXXX</config-property-setting>
>                     <config-property-setting
> name="UserName">XXXX</config-property-setting>
>                     <config-property-setting
> name="ConnectionURL">jdbc:mysql://somewhereinthesea:3306/dbuser</config-property-setting>
>                     <connectionmanager>
>                         <local-transaction/>
>                         <single-pool>
>                             <max-size>10</max-size>
>                             <min-size>0</min-size>
>                             <match-one/>
>                         </single-pool>
>                     </connectionmanager>
>                 </connectiondefinition-instance>
>             </connection-definition>
>         </outbound-resourceadapter>
>     </resourceadapter>
> </connector>
>
> Best regards,
> Torsten
>
>
> Hernan Cunico schrieb:
>   
>> Hi Torsten,
>> I assume you are using the embedded Derby db, there seems to be a
>> problem with the tranql connector support for the current version of
>> Derby we have in that build.
>>
>> Plz confirm the DB you are using.
>>
>> Cheers!
>> Hernan
>>
>> Torsten Krall wrote:
>>     
>>> Hello,
>>>
>>> I created and deployed a global database pool "tkldienstplanpool", the
>>> test worked fine.
>>>
>>> Now I want to use this database pool within a sql-security-realm but the
>>> test throws following exception:
>>> java.lang.IllegalArgumentException: interface
>>> org.tranql.connector.DissociatableConnectionHandle is not visible from
>>> class loader
>>>
>>> Why does the test of the database pool run fine but the security-realm
>>> does not work?
>>>
>>> Best regards,
>>> Torsten Krall
>>>
>>> Entire stacktrace:
>>>
>>> 13:17:26,455 INFO  [DatabasePoolPortlet] Deployment completed
>>> successfully!
>>> 13:31:56,477 WARN  [SecurityRealmPortlet] Testing with options
>>> {groupSelect=SELECT d1.username, d2.name as gruppe FROM
>>> dp_realm_user_group d
>>>  INNER JOIN dp_realm_user d1 ON d1.id=d.user INNER JOIN dp_realm_group
>>> d2 ON d2.id=d.group WHERE d1.username=?, org.apache.geronimo.security
>>> .realm.GenericSecurityRealm.CLASSLOADER=[org.apache.geronimo.kernel.classloader.JarFileClassLoader
>>>
>>> id=org.apache.geronimo.configs/webconsole
>>> -tomcat_standard.war/2.0-M2/car], dataSourceApplication=null,
>>> userSelect=select username, password from dp_realm_user where
>>> username=?, data
>>> SourceName=tkldienstplanpool3}
>>> 13:32:10,276 WARN  [SecurityRealmPortlet] Test login failed
>>> javax.security.auth.login.LoginException: SQL error
>>>         at
>>> org.apache.geronimo.security.realm.providers.SQLLoginModule.login(SQLLoginModule.java:257)
>>>
>>>         at
>>> org.apache.geronimo.console.util.KernelManagementHelper.testLoginModule(KernelManagementHelper.java:423)
>>>
>>>         at
>>> org.apache.geronimo.console.util.PortletManager.testLoginModule(PortletManager.java:160)
>>>
>>>         at
>>> org.apache.geronimo.console.securitymanager.realm.SecurityRealmPortlet.actionAttemptLogin(SecurityRealmPortlet.java:334)
>>>
>>>         at
>>> org.apache.geronimo.console.securitymanager.realm.SecurityRealmPortlet.processAction(SecurityRealmPortlet.java:215)
>>>
>>>         at
>>> org.apache.pluto.core.PortletServlet.dispatch(PortletServlet.java:229)
>>>         at
>>> org.apache.pluto.core.PortletServlet.doGet(PortletServlet.java:158)
>>>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:693)
>>>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
>>>         at
>>> org.apache.pluto.core.PortletServlet.service(PortletServlet.java:153)
>>>         at
>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>>>
>>>         at
>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>>>
>>>         at
>>> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:687)
>>>
>>>         at
>>> org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:590)
>>>
>>>         at
>>> org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:505)
>>>
>>>         at
>>> org.apache.pluto.invoker.impl.PortletInvokerImpl.invoke(PortletInvokerImpl.java:120)
>>>
>>>         at
>>> org.apache.pluto.invoker.impl.PortletInvokerImpl.action(PortletInvokerImpl.java:68)
>>>
>>>         at
>>> org.apache.pluto.PortletContainerImpl.processPortletAction(PortletContainerImpl.java:164)
>>>
>>>         at
>>> org.apache.pluto.portalImpl.core.PortletContainerWrapperImpl.processPortletAction(PortletContainerWrapperImpl.java:82)
>>>
>>>         at org.apache.pluto.portalImpl.Servlet.doGet(Servlet.java:227)
>>>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:693)
>>>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
>>>         at
>>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>>>
>>>         at
>>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>>>
>>>         at
>>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:228)
>>>
>>>         at
>>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
>>>
>>>         at
>>> org.apache.geronimo.tomcat.valve.DefaultSubjectValve.invoke(DefaultSubjectValve.java:56)
>>>
>>>         at
>>> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)
>>>
>>>         at
>>> org.apache.geronimo.tomcat.GeronimoStandardContext$SystemMethodValve.invoke(GeronimoStandardContext.java:338)
>>>
>>>         at
>>> org.apache.geronimo.tomcat.valve.GeronimoBeforeAfterValve.invoke(GeronimoBeforeAfterValve.java:47)
>>>
>>>         at
>>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
>>>
>>>         at
>>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
>>>
>>>         at
>>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>>>
>>>         at
>>> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:517)
>>>
>>>         at
>>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:212)
>>>
>>>         at
>>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
>>>
>>>         at
>>> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:634)
>>>
>>>         at
>>> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:445)
>>>         at java.lang.Thread.run(Thread.java:619)
>>> Caused by: java.sql.SQLException
>>>         at
>>> org.tranql.connector.jdbc.DataSource.getConnection(DataSource.java:61)
>>>         at
>>> $javax.sql.DataSource$$FastClassByCGLIB$$6525cafd.invoke(<generated>)
>>>         at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
>>>         at
>>> org.apache.geronimo.connector.ConnectorMethodInterceptor.intercept(ConnectorMethodInterceptor.java:54)
>>>
>>>         at
>>> $javax.sql.DataSource$$EnhancerByCGLIB$$8b609c1.getConnection(<generated>)
>>>
>>>         at
>>> org.apache.geronimo.security.realm.providers.SQLLoginModule.login(SQLLoginModule.java:194)
>>>
>>>         ... 38 more
>>> Caused by: javax.resource.ResourceException: Unable to construct
>>> connection proxy
>>>         at
>>> org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator.proxyConnection(ConnectionTrackingCoordin
>>>
>>> ator.java:238)
>>>         at
>>> org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator.handleObtained(ConnectionTrackingCoordina
>>>
>>> tor.java:157)
>>>         at
>>> org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator$$FastClassByCGLIB$$5d33aabf.invoke(<gener
>>>
>>> ated>)
>>>         at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>>>         at
>>> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
>>>
>>>         at
>>> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:127)
>>>
>>>         at
>>> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:820)
>>>
>>>         at
>>> org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57)
>>>         at
>>> org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:35)
>>>
>>>         at
>>> org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96)
>>>
>>>         at
>>> org.apache.geronimo.gbean.GBeanLifecycle$$EnhancerByCGLIB$$51d42e0c.handleObtained(<generated>)
>>>
>>>         at
>>> org.apache.geronimo.connector.outbound.ConnectionTrackingInterceptor.getConnection(ConnectionTrackingInterceptor.java:67)
>>>
>>>         at
>>> org.apache.geronimo.connector.outbound.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:61)
>>>
>>>         at
>>> org.tranql.connector.jdbc.DataSource.getConnection(DataSource.java:56)
>>>         ... 43 more
>>> Caused by: java.lang.IllegalArgumentException: interface
>>> org.tranql.connector.DissociatableConnectionHandle is not visible from
>>> class loader
>>>
>>>         at java.lang.reflect.Proxy.getProxyClass(Proxy.java:353)
>>>         at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:581)
>>>         at
>>> org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator.proxyConnection(ConnectionTrackingCoordin
>>>
>>> ator.java:230)
>>>         ... 56 more
>>>
>>>       
>
>   


Re: Problem creating sql-security-realm using geronimo-tomcat6-jee5-2.0-M2

Posted by Torsten Krall <tk...@tkl-soft.de>.
Hi,

thanks for your answer.

No, I am using mysql.

The test of the datapool-creation-wizard told me:
Test Result: Connected to MySQL 5.1.11-beta-Debian_1-log

Seems to be correct.
This is the generated plan:

<?xml version="1.0" encoding="UTF-8"?>
<connector xmlns="http://geronimo.apache.org/xml/ns/j2ee/connector-1.2">
    <dep:environment
xmlns:dep="http://geronimo.apache.org/xml/ns/deployment-1.2">
        <dep:moduleId>
            <dep:groupId>console.dbpool</dep:groupId>
            <dep:artifactId>tkldienstplanpool</dep:artifactId>
            <dep:version>1.0</dep:version>
            <dep:type>rar</dep:type>
        </dep:moduleId>
        <dep:dependencies>
            <dep:dependency>
                <dep:groupId>mysql</dep:groupId>
                <dep:artifactId>mysql-connector-java</dep:artifactId>
                <dep:version>3.1.12</dep:version>
                <dep:type>jar</dep:type>
            </dep:dependency>
        </dep:dependencies>
    </dep:environment>
    <resourceadapter>
        <outbound-resourceadapter>
            <connection-definition>
               
<connectionfactory-interface>javax.sql.DataSource</connectionfactory-interface>
                <connectiondefinition-instance>
                    <name>tkldienstplanpool</name>
                    <config-property-setting
name="Driver">com.mysql.jdbc.Driver</config-property-setting>
                    <config-property-setting
name="Password">XXXX</config-property-setting>
                    <config-property-setting
name="UserName">XXXX</config-property-setting>
                    <config-property-setting
name="ConnectionURL">jdbc:mysql://somewhereinthesea:3306/dbuser</config-property-setting>
                    <connectionmanager>
                        <local-transaction/>
                        <single-pool>
                            <max-size>10</max-size>
                            <min-size>0</min-size>
                            <match-one/>
                        </single-pool>
                    </connectionmanager>
                </connectiondefinition-instance>
            </connection-definition>
        </outbound-resourceadapter>
    </resourceadapter>
</connector>

Best regards,
Torsten


Hernan Cunico schrieb:
> Hi Torsten,
> I assume you are using the embedded Derby db, there seems to be a
> problem with the tranql connector support for the current version of
> Derby we have in that build.
>
> Plz confirm the DB you are using.
>
> Cheers!
> Hernan
>
> Torsten Krall wrote:
>> Hello,
>>
>> I created and deployed a global database pool "tkldienstplanpool", the
>> test worked fine.
>>
>> Now I want to use this database pool within a sql-security-realm but the
>> test throws following exception:
>> java.lang.IllegalArgumentException: interface
>> org.tranql.connector.DissociatableConnectionHandle is not visible from
>> class loader
>>
>> Why does the test of the database pool run fine but the security-realm
>> does not work?
>>
>> Best regards,
>> Torsten Krall
>>
>> Entire stacktrace:
>>
>> 13:17:26,455 INFO  [DatabasePoolPortlet] Deployment completed
>> successfully!
>> 13:31:56,477 WARN  [SecurityRealmPortlet] Testing with options
>> {groupSelect=SELECT d1.username, d2.name as gruppe FROM
>> dp_realm_user_group d
>>  INNER JOIN dp_realm_user d1 ON d1.id=d.user INNER JOIN dp_realm_group
>> d2 ON d2.id=d.group WHERE d1.username=?, org.apache.geronimo.security
>> .realm.GenericSecurityRealm.CLASSLOADER=[org.apache.geronimo.kernel.classloader.JarFileClassLoader
>>
>> id=org.apache.geronimo.configs/webconsole
>> -tomcat_standard.war/2.0-M2/car], dataSourceApplication=null,
>> userSelect=select username, password from dp_realm_user where
>> username=?, data
>> SourceName=tkldienstplanpool3}
>> 13:32:10,276 WARN  [SecurityRealmPortlet] Test login failed
>> javax.security.auth.login.LoginException: SQL error
>>         at
>> org.apache.geronimo.security.realm.providers.SQLLoginModule.login(SQLLoginModule.java:257)
>>
>>         at
>> org.apache.geronimo.console.util.KernelManagementHelper.testLoginModule(KernelManagementHelper.java:423)
>>
>>         at
>> org.apache.geronimo.console.util.PortletManager.testLoginModule(PortletManager.java:160)
>>
>>         at
>> org.apache.geronimo.console.securitymanager.realm.SecurityRealmPortlet.actionAttemptLogin(SecurityRealmPortlet.java:334)
>>
>>         at
>> org.apache.geronimo.console.securitymanager.realm.SecurityRealmPortlet.processAction(SecurityRealmPortlet.java:215)
>>
>>         at
>> org.apache.pluto.core.PortletServlet.dispatch(PortletServlet.java:229)
>>         at
>> org.apache.pluto.core.PortletServlet.doGet(PortletServlet.java:158)
>>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:693)
>>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
>>         at
>> org.apache.pluto.core.PortletServlet.service(PortletServlet.java:153)
>>         at
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>>
>>         at
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>>
>>         at
>> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:687)
>>
>>         at
>> org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:590)
>>
>>         at
>> org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:505)
>>
>>         at
>> org.apache.pluto.invoker.impl.PortletInvokerImpl.invoke(PortletInvokerImpl.java:120)
>>
>>         at
>> org.apache.pluto.invoker.impl.PortletInvokerImpl.action(PortletInvokerImpl.java:68)
>>
>>         at
>> org.apache.pluto.PortletContainerImpl.processPortletAction(PortletContainerImpl.java:164)
>>
>>         at
>> org.apache.pluto.portalImpl.core.PortletContainerWrapperImpl.processPortletAction(PortletContainerWrapperImpl.java:82)
>>
>>         at org.apache.pluto.portalImpl.Servlet.doGet(Servlet.java:227)
>>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:693)
>>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
>>         at
>> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>>
>>         at
>> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>>
>>         at
>> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:228)
>>
>>         at
>> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
>>
>>         at
>> org.apache.geronimo.tomcat.valve.DefaultSubjectValve.invoke(DefaultSubjectValve.java:56)
>>
>>         at
>> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)
>>
>>         at
>> org.apache.geronimo.tomcat.GeronimoStandardContext$SystemMethodValve.invoke(GeronimoStandardContext.java:338)
>>
>>         at
>> org.apache.geronimo.tomcat.valve.GeronimoBeforeAfterValve.invoke(GeronimoBeforeAfterValve.java:47)
>>
>>         at
>> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
>>
>>         at
>> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
>>
>>         at
>> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>>
>>         at
>> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:517)
>>
>>         at
>> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:212)
>>
>>         at
>> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
>>
>>         at
>> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:634)
>>
>>         at
>> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:445)
>>         at java.lang.Thread.run(Thread.java:619)
>> Caused by: java.sql.SQLException
>>         at
>> org.tranql.connector.jdbc.DataSource.getConnection(DataSource.java:61)
>>         at
>> $javax.sql.DataSource$$FastClassByCGLIB$$6525cafd.invoke(<generated>)
>>         at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
>>         at
>> org.apache.geronimo.connector.ConnectorMethodInterceptor.intercept(ConnectorMethodInterceptor.java:54)
>>
>>         at
>> $javax.sql.DataSource$$EnhancerByCGLIB$$8b609c1.getConnection(<generated>)
>>
>>         at
>> org.apache.geronimo.security.realm.providers.SQLLoginModule.login(SQLLoginModule.java:194)
>>
>>         ... 38 more
>> Caused by: javax.resource.ResourceException: Unable to construct
>> connection proxy
>>         at
>> org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator.proxyConnection(ConnectionTrackingCoordin
>>
>> ator.java:238)
>>         at
>> org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator.handleObtained(ConnectionTrackingCoordina
>>
>> tor.java:157)
>>         at
>> org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator$$FastClassByCGLIB$$5d33aabf.invoke(<gener
>>
>> ated>)
>>         at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>>         at
>> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
>>
>>         at
>> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:127)
>>
>>         at
>> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:820)
>>
>>         at
>> org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57)
>>         at
>> org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:35)
>>
>>         at
>> org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96)
>>
>>         at
>> org.apache.geronimo.gbean.GBeanLifecycle$$EnhancerByCGLIB$$51d42e0c.handleObtained(<generated>)
>>
>>         at
>> org.apache.geronimo.connector.outbound.ConnectionTrackingInterceptor.getConnection(ConnectionTrackingInterceptor.java:67)
>>
>>         at
>> org.apache.geronimo.connector.outbound.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:61)
>>
>>         at
>> org.tranql.connector.jdbc.DataSource.getConnection(DataSource.java:56)
>>         ... 43 more
>> Caused by: java.lang.IllegalArgumentException: interface
>> org.tranql.connector.DissociatableConnectionHandle is not visible from
>> class loader
>>
>>         at java.lang.reflect.Proxy.getProxyClass(Proxy.java:353)
>>         at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:581)
>>         at
>> org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator.proxyConnection(ConnectionTrackingCoordin
>>
>> ator.java:230)
>>         ... 56 more
>>
>


Re: Problem creating sql-security-realm using geronimo-tomcat6-jee5-2.0-M2

Posted by Hernan Cunico <hc...@gmail.com>.
Hi Torsten,
I assume you are using the embedded Derby db, there seems to be a problem with the tranql connector support for the current version of Derby we have in that build.

Plz confirm the DB you are using.

Cheers!
Hernan

Torsten Krall wrote:
> Hello,
> 
> I created and deployed a global database pool "tkldienstplanpool", the
> test worked fine.
> 
> Now I want to use this database pool within a sql-security-realm but the
> test throws following exception:
> java.lang.IllegalArgumentException: interface
> org.tranql.connector.DissociatableConnectionHandle is not visible from
> class loader
> 
> Why does the test of the database pool run fine but the security-realm
> does not work?
> 
> Best regards,
> Torsten Krall
> 
> Entire stacktrace:
> 
> 13:17:26,455 INFO  [DatabasePoolPortlet] Deployment completed successfully!
> 13:31:56,477 WARN  [SecurityRealmPortlet] Testing with options
> {groupSelect=SELECT d1.username, d2.name as gruppe FROM
> dp_realm_user_group d
>  INNER JOIN dp_realm_user d1 ON d1.id=d.user INNER JOIN dp_realm_group
> d2 ON d2.id=d.group WHERE d1.username=?, org.apache.geronimo.security
> .realm.GenericSecurityRealm.CLASSLOADER=[org.apache.geronimo.kernel.classloader.JarFileClassLoader
> id=org.apache.geronimo.configs/webconsole
> -tomcat_standard.war/2.0-M2/car], dataSourceApplication=null,
> userSelect=select username, password from dp_realm_user where
> username=?, data
> SourceName=tkldienstplanpool3}
> 13:32:10,276 WARN  [SecurityRealmPortlet] Test login failed
> javax.security.auth.login.LoginException: SQL error
>         at
> org.apache.geronimo.security.realm.providers.SQLLoginModule.login(SQLLoginModule.java:257)
>         at
> org.apache.geronimo.console.util.KernelManagementHelper.testLoginModule(KernelManagementHelper.java:423)
>         at
> org.apache.geronimo.console.util.PortletManager.testLoginModule(PortletManager.java:160)
>         at
> org.apache.geronimo.console.securitymanager.realm.SecurityRealmPortlet.actionAttemptLogin(SecurityRealmPortlet.java:334)
>         at
> org.apache.geronimo.console.securitymanager.realm.SecurityRealmPortlet.processAction(SecurityRealmPortlet.java:215)
>         at
> org.apache.pluto.core.PortletServlet.dispatch(PortletServlet.java:229)
>         at
> org.apache.pluto.core.PortletServlet.doGet(PortletServlet.java:158)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:693)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
>         at
> org.apache.pluto.core.PortletServlet.service(PortletServlet.java:153)
>         at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>         at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>         at
> org.apache.catalina.core.ApplicationDispatcher.invoke(ApplicationDispatcher.java:687)
>         at
> org.apache.catalina.core.ApplicationDispatcher.doInclude(ApplicationDispatcher.java:590)
>         at
> org.apache.catalina.core.ApplicationDispatcher.include(ApplicationDispatcher.java:505)
>         at
> org.apache.pluto.invoker.impl.PortletInvokerImpl.invoke(PortletInvokerImpl.java:120)
>         at
> org.apache.pluto.invoker.impl.PortletInvokerImpl.action(PortletInvokerImpl.java:68)
>         at
> org.apache.pluto.PortletContainerImpl.processPortletAction(PortletContainerImpl.java:164)
>         at
> org.apache.pluto.portalImpl.core.PortletContainerWrapperImpl.processPortletAction(PortletContainerWrapperImpl.java:82)
>         at org.apache.pluto.portalImpl.Servlet.doGet(Servlet.java:227)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:693)
>         at javax.servlet.http.HttpServlet.service(HttpServlet.java:806)
>         at
> org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
>         at
> org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
>         at
> org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:228)
>         at
> org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:175)
>         at
> org.apache.geronimo.tomcat.valve.DefaultSubjectValve.invoke(DefaultSubjectValve.java:56)
>         at
> org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:525)
>         at
> org.apache.geronimo.tomcat.GeronimoStandardContext$SystemMethodValve.invoke(GeronimoStandardContext.java:338)
>         at
> org.apache.geronimo.tomcat.valve.GeronimoBeforeAfterValve.invoke(GeronimoBeforeAfterValve.java:47)
>         at
> org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:128)
>         at
> org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:105)
>         at
> org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
>         at
> org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:517)
>         at
> org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:212)
>         at
> org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:844)
>         at
> org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:634)
>         at
> org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:445)
>         at java.lang.Thread.run(Thread.java:619)
> Caused by: java.sql.SQLException
>         at
> org.tranql.connector.jdbc.DataSource.getConnection(DataSource.java:61)
>         at
> $javax.sql.DataSource$$FastClassByCGLIB$$6525cafd.invoke(<generated>)
>         at net.sf.cglib.proxy.MethodProxy.invoke(MethodProxy.java:149)
>         at
> org.apache.geronimo.connector.ConnectorMethodInterceptor.intercept(ConnectorMethodInterceptor.java:54)
>         at
> $javax.sql.DataSource$$EnhancerByCGLIB$$8b609c1.getConnection(<generated>)
>         at
> org.apache.geronimo.security.realm.providers.SQLLoginModule.login(SQLLoginModule.java:194)
>         ... 38 more
> Caused by: javax.resource.ResourceException: Unable to construct
> connection proxy
>         at
> org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator.proxyConnection(ConnectionTrackingCoordin
> ator.java:238)
>         at
> org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator.handleObtained(ConnectionTrackingCoordina
> tor.java:157)
>         at
> org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator$$FastClassByCGLIB$$5d33aabf.invoke(<gener
> ated>)
>         at net.sf.cglib.reflect.FastMethod.invoke(FastMethod.java:53)
>         at
> org.apache.geronimo.gbean.runtime.FastMethodInvoker.invoke(FastMethodInvoker.java:38)
>         at
> org.apache.geronimo.gbean.runtime.GBeanOperation.invoke(GBeanOperation.java:127)
>         at
> org.apache.geronimo.gbean.runtime.GBeanInstance.invoke(GBeanInstance.java:820)
>         at
> org.apache.geronimo.gbean.runtime.RawInvoker.invoke(RawInvoker.java:57)
>         at
> org.apache.geronimo.kernel.basic.RawOperationInvoker.invoke(RawOperationInvoker.java:35)
>         at
> org.apache.geronimo.kernel.basic.ProxyMethodInterceptor.intercept(ProxyMethodInterceptor.java:96)
>         at
> org.apache.geronimo.gbean.GBeanLifecycle$$EnhancerByCGLIB$$51d42e0c.handleObtained(<generated>)
>         at
> org.apache.geronimo.connector.outbound.ConnectionTrackingInterceptor.getConnection(ConnectionTrackingInterceptor.java:67)
>         at
> org.apache.geronimo.connector.outbound.AbstractConnectionManager.allocateConnection(AbstractConnectionManager.java:61)
>         at
> org.tranql.connector.jdbc.DataSource.getConnection(DataSource.java:56)
>         ... 43 more
> Caused by: java.lang.IllegalArgumentException: interface
> org.tranql.connector.DissociatableConnectionHandle is not visible from
> class loader
> 
>         at java.lang.reflect.Proxy.getProxyClass(Proxy.java:353)
>         at java.lang.reflect.Proxy.newProxyInstance(Proxy.java:581)
>         at
> org.apache.geronimo.connector.outbound.connectiontracking.ConnectionTrackingCoordinator.proxyConnection(ConnectionTrackingCoordin
> ator.java:230)
>         ... 56 more
>