Ich habe Formular login.jsp erstellt und wenn Benutzer Benutzername & Passwort eingeben, dann möchte ich URL wie: /companyName/username
erstellen.Wie erstellt man dynamische URL in Struts2?
Beispiel: Wenn Firmenname ist „abc“ und Benutzername ist „parth1“ dann ist url "http://localhost:8080/Temp_Central_Emp/abc/parth1/afterLogin.jsp"
ich companyName
aus der Datenbank erhalten, basierend auf den Benutzernamen.
Datei: login.jsp
<s:form action="afterLogin" method="post">
<s:textfield label="Enter username" key="userId" maxlength="5" size="30" id="userId"/>
<s:password label="Enter password" key="userPsw" size="30" />
<tr>
<td></td>
<td>
<img src="<c:url value='simple-captcha.png' />" />
<br />
<p>Press F5 for refresh.</p>
</td>
</tr>
<s:textfield label="Enter code" key="captchaResponse" size="30" />
<s:submit value="Login" />
</s:form>
Datei: struts.xml
<struts>
<constant name="struts.enable.SlashesInActionNames" value="true"/>
<constant name="struts.mapper.alwaysSelectFullNamespace" value="false"/>
<constant name="struts.devMode" value="true" />
<package name="a" extends="struts-default">
<action name="afterLogin" class="com.parth.LoginAction">
<result name="success">/afterLogin.jsp</result>
</action>
</package>
Datei: LoginAction.java
public class LoginAction extends ActionSupport{
private Map<String, Object> session;
private String userId;
private String userPsw;
private String url;
private static final long serialVersionUID = 1L;
@Override
@Action(value="{url}/afterLogin")
public String execute() throws Exception {
// business logic to insert user into database
url = "/companyName/" + userId;
return SUCCESS;
}
/* Getters and Setters */
}
Ich verweise diesen Link, aber mein Bedarf ist anders. Creating dynamic URL with 2 action parameters in Struts 2 using OGNL
Ich versuche auch Code von diesem Link, aber ich bin es immer noch nicht lösen.
check this out http://stackoverflow.com/questions/23780282/how-to-create-custom-urls-with-struts2like-www-twitter-com-goodyzain – goodyzain
@goodyzain wenn i add ** ** Ich erhalte einen Fehler. Und ich änderte auch meinen Code basierend auf der Antwort auf Ihre Frage, aber immer noch nicht funktionieren. Wenn Sie wissen, wie dynamische URL generieren dann bitte Code basierend auf der obigen Frage. –
Was ist der Fehler, den Sie bekommen, wenn Sie Advanced Wildcard hinzufügen ?? –
goodyzain