Hi!

 

I have some problems with the Turbine Security Service. 

About the environment: Turbine 2.2-b3, Torque 3.0.2, Tomcat 4.1.31, WinXP,
PostgreSQL database server.

On Login process I execute the following lines of code:

 

          User tu=TurbineSecurity.getAuthenticatedUser(username, password);

          tu.setHasLoggedIn(new Boolean(true));

          tu.setLastLogin(new java.util.Date());

(*)       TurbineSecurity.saveUser(tu);

 

But on line marked with (*) I obtain the following exception:

 

            Exception:  java.lang.reflect.InvocationTargetException

            Stack Trace follows:

            java.lang.reflect.InvocationTargetException

            at sun.reflect.NativeMethodAccessorImpl.invoke0(Native Method)

            at
sun.reflect.NativeMethodAccessorImpl.invoke(NativeMethodAccessorImpl.java:39
)

            at
sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl
.java:25)

            at java.lang.reflect.Method.invoke(Method.java:324)

            at
org.apache.turbine.util.velocity.VelocityActionEvent.executeEvents(VelocityA
ctionEvent.java:159)

            at
org.apache.turbine.util.velocity.VelocityActionEvent.perform(VelocityActionE
vent.java:107)

            at
org.apache.turbine.modules.actions.VelocityAction.perform(VelocityAction.jav
a:110)

            at
org.apache.turbine.modules.actions.VelocitySecureAction.perform(VelocitySecu
reAction.java:100)

            at
org.apache.turbine.modules.ActionLoader.exec(ActionLoader.java:122)

            at
org.apache.turbine.modules.pages.DefaultPage.doBuild(DefaultPage.java:143)

            at org.apache.turbine.modules.Page.build(Page.java:90)

            at
org.apache.turbine.modules.PageLoader.exec(PageLoader.java:123)

            at org.apache.turbine.Turbine.doGet(Turbine.java:563)

            at org.apache.turbine.Turbine.doPost(Turbine.java:658)

            at javax.servlet.http.HttpServlet.service(HttpServlet.java:716)

            at javax.servlet.http.HttpServlet.service(HttpServlet.java:809)

            at
org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(Application
FilterChain.java:200)

            at
org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterCh
ain.java:146)

            at
org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.ja
va:209)

            at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:596)

            at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)

            at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)

            at
org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.ja
va:144)

            at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:596)

            at
org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase
.java:445)

            at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:594)

            at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)

            at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)

            at
org.apache.catalina.core.StandardContext.invoke(StandardContext.java:2358)

            at
org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:133
)

            at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:596)

            at
org.apache.catalina.valves.ErrorDispatcherValve.invoke(ErrorDispatcherValve.
java:118)

            at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:594)

            at
org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:116
)

            at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:594)

            at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)

            at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)

            at
org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java
:127)

            at
org.apache.catalina.core.StandardPipeline$StandardPipelineValveContext.invok
eNext(StandardPipeline.java:596)

            at
org.apache.catalina.core.StandardPipeline.invoke(StandardPipeline.java:433)

            at
org.apache.catalina.core.ContainerBase.invoke(ContainerBase.java:948)

            at
org.apache.coyote.tomcat4.CoyoteAdapter.service(CoyoteAdapter.java:152)

            at
org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:799)

            at
org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.processConne
ction(Http11Protocol.java:705)

            at
org.apache.tomcat.util.net.TcpWorkerThread.runIt(PoolTcpEndpoint.java:577)

            at
org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run(ThreadPool.jav
a:683)

            at java.lang.Thread.run(Thread.java:534)

Caused by: org.apache.turbine.util.security.DataBackendException: Failed to
save user object: Bad conversion: java.lang.NumberFormatException: For input
string: "¬í sr java.util.Hashtable»%!Jä¸ 

  _____  

 [1]F 

loadFactorI        thresholdxp?@      w       x"

            at
org.apache.turbine.services.security.db.DBUserManager.store(DBUserManager.ja
va:271)

            at
org.apache.turbine.services.security.BaseSecurityService.saveUser(BaseSecuri
tyService.java:374)

            at
org.apache.turbine.services.security.TurbineSecurity.saveUser(TurbineSecurit
y.java:256)

            at
myapp.web.modules.general.actions.LoginAction.doLogin(LoginAction.java:52)

            ... 47 more

 

In another application. I have the similar code, but connected to MySql
server… In that context it works fine.

 

I decided to delete the marked line… The application run well, but,
sometimes (I think when the session expires) I obtain a similar exception
(it is not thrown from my LoginAction). Maybe Turbine knows when the session
expired and try from some reason to save the user from the runData
(TurbineSecurity.saveUser)?

What can cause this problem. 

Anybody some advice? Or there is an another scenario for using the security
service?

 

Thanks in advance!

 

                    Regards,   

                       Levi

Reply via email to