Je travaille sur le livre de Fred Daoud's Stripes et essaye de convertir l'application Hello World pour utiliser des URL conviviales, car je ne suis pas un grand fan des mappages basés sur suffix comme http://localhost:8080/getting_started/Hello.action.Conversion d'une application Stripes pour utiliser les URLs amies
Voici le avant ...
index.jsp:
<jsp:forward page="/Hello.action"/>
web.xml:
<servlet-mapping>
<servlet-name>DispatcherServlet</servlet-name>
<url-pattern>*.action</url-pattern>
</servlet-mapping>
et je ne UrlBinding sur mon HelloActionBean. J'ai l'exemple du livre qui fonctionne. Je me demande si les exemples de livre peuvent convenir à une version antérieure de Stripes, car j'ai téléchargé 1.5.1 et mon web.xml définit StripesFilter et StripesDispatcher alors que j'ai vu un DynamicMappingFilter utilisé ailleurs, par exemple. dans this article par Fred sur TheServerSide.
Quoi qu'il en soit, je fait les modifications suivantes:
index.jsp:
<jsp:forward page="/hello"/>
web.xml:
<servlet-mapping>
<servlet-name>DispatcherServlet</servlet-name>
<url-pattern>/*</url-pattern>
</servlet-mapping>
HelloActionBean.java:
**@UrlBinding("/hello")**
public class HelloActionBean implements ActionBean
{
Cependant , lorsque j'essaie de charger l'application hrough http://localhost:8080/getting_started Je vois ceci:
net.sourceforge.stripes.exception.ActionBeanNotFoundException: Could not locate an ActionBean that is bound to the URL [/]. Commons reasons for this include mis-matched URLs and forgetting to implement ActionBean in your class. Registered ActionBeans are: {/hello=class stripesbook.action.HelloActionBean, /controller/DefaultView.action=class net.sourceforge.stripes.controller.DefaultViewActionBean, /hello/=class stripesbook.action.HelloActionBean, /controller/DefaultView.action/=class net.sourceforge.stripes.controller.DefaultViewActionBean}
at net.sourceforge.stripes.controller.AnnotatedClassActionResolver.getActionBean(AnnotatedClassActionResolver.java:341)
et si je y accède par http://localhost:8080/getting_started/hello le serveur semble aller dans une boucle lancer une exception après l'autre.
Toute suggestion appréciée - merci.