You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@struts.apache.org by Leena Borle <ls...@gmail.com> on 2007/10/26 20:20:25 UTC

Form based User Authentication in struts 2

Hi,
  I have added "Form Based"  Tomcat Authentication for my struts-2
application. It works foine if I have just the login form in my login.jspas,
    <form method="POST" action="j_security_check">

       <input type="text" name="j_username">
       <input type="password" name="j_password">

    </form>

However I wan to add link to registration page in the same login page ,
e.g.
<a href="<s:url action="RegisterUser_input.action"/>">Register</a>

If I add this line to the login.jsp I get following error at the server, and
the browser's URL bar displays action resulted from my register.action.
Is it possible to add links to other actions in my login.jsp? I tried to
look for solution on the web, but could not. all the examples have just this
simple form, but in real world you have user login along with lots of
information on the same page.

Thanks,
Leena

Exception,

INFO: Detected AnnotationActionValidatorManager, initializing it...
11:12:05,519 WARN  [FormAuthenticator] Unexpected error forwarding to login
page

org.apache.jasper.JasperException: Exception in JSP: /example/Login.jsp:33

30:               </form>
31:
32: <ul>
33:     <li><a href="<s:url
action="RegisterUser_input.action"/>">Register</a></
li>
34: </ul>
35:
36: </body>


Stacktrace:
        at org.apache.jasper.servlet.JspServletWrapper.handleJspException
(JspSer
vletWrapper.java:451)
        at org.apache.jasper.servlet.JspServletWrapper.service
(JspServletWrapper
.java:373)
        at org.apache.jasper.servlet.JspServlet.serviceJspFile(
JspServlet.java:3
29)
        at org.apache.jasper.servlet.JspServlet.service(JspServlet.java:265)
        at javax.servlet.http.HttpServlet.service(HttpServlet.java:803)
        at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter
(Appl
icationFilterChain.java:269)
        at org.apache.catalina.core.ApplicationFilterChain.doFilter
(ApplicationF
ilterChain.java:188)
        at org.apache.catalina.core.ApplicationDispatcher.invoke
(ApplicationDisp
atcher.java:691)
        at org.apache.catalina.core.ApplicationDispatcher.processRequest
(Applica
tionDispatcher.java:469)
        at org.apache.catalina.core.ApplicationDispatcher.doForward
(ApplicationD
ispatcher.java:403)
        at org.apache.catalina.core.ApplicationDispatcher.forward
(ApplicationDis
patcher.java:301)
        at
org.apache.catalina.authenticator.FormAuthenticator.forwardToLoginPag
e(FormAuthenticator.java:316)
        at org.apache.catalina.authenticator.FormAuthenticator.authenticate
(Form
Authenticator.java:244)
        at org.apache.catalina.authenticator.AuthenticatorBase.invoke
(Authentica
torBase.java:491)
        at org.apache.catalina.core.StandardHostValve.invoke(
StandardHostValve.j
ava:127)
        at org.apache.catalina.valves.ErrorReportValve.invoke(
ErrorReportValve.j
ava:117)
        at org.apache.catalina.authenticator.SingleSignOn.invoke(
SingleSignOn.ja
va:420)
        at org.apache.catalina.core.StandardEngineValve.invoke
(StandardEngineVal
ve.java:108)
        at org.apache.catalina.connector.CoyoteAdapter.service(
CoyoteAdapter.jav
a:151)
        at org.apache.coyote.http11.Http11Processor.process(
Http11Processor.java
:874)
        at
org.apache.coyote.http11.Http11BaseProtocol$Http11ConnectionHandler.p
rocessConnection(Http11BaseProtocol.java:665)
        at org.apache.tomcat.util.net.PoolTcpEndpoint.processSocket
(PoolTcpEndpo
int.java:528)
        at org.apache.tomcat.util.net.LeaderFollowerWorkerThread.runIt
(LeaderFol
lowerWorkerThread.java:81)
        at org.apache.tomcat.util.threads.ThreadPool$ControlRunnable.run
(ThreadP
ool.java:689)
        at java.lang.Thread.run(Thread.java:619)