tester l'application au printemps JSF demande ajax en utilisant jmeter

voix
2

J'utilise compteur j afin de vérifier combien de temps il faut à partir d'une pression sur un bouton a4j du côté client à la réponse du serveur.

Pour y parvenir, j'ai ouvert une requête HTTP en utilisant Fiddler et cherché:

  1. demande ajax décodée et a inséré aux valeurs dans l'en-tête http?
  2. Que dois-je insérer afin d'envoyer une demande? ID de session ? comment l'insérer dans l'en-tête http?

Je le lance sur la même machine où je lance Tomcat et je peux voir dans mon enregistreur Eclipse j'entre à la bonne page, mais le bouton poussoir est pas poussé, quelqu'un peut me aider s'il vous plaît.

Ceci est l'enregistreur que je reçois dans Eclipse:

2011-08-17 09:52:32,673 ERROR [_ErrorPageWriter] An exception occurred
javax.faces.FacesException: javax.crypto.BadPaddingException: Given final block not properly padded
    at org.apache.myfaces.shared_impl.util.StateUtils.symmetric(StateUtils.java:456)
    at org.apache.myfaces.shared_impl.util.StateUtils.symmetric(StateUtils.java:494)
    at org.apache.myfaces.shared_impl.util.StateUtils.decrypt(StateUtils.java:294)
    at org.apache.myfaces.shared_impl.util.StateUtils.reconstruct(StateUtils.java:243)
    at org.apache.myfaces.renderkit.html.HtmlResponseStateManager.getSavedState(HtmlResponseStateManager.java:187)
    at org.apache.myfaces.renderkit.html.HtmlResponseStateManager.getTreeStructureToRestore(HtmlResponseStateManager.java:151)
    at org.ajax4jsf.application.AjaxStateManager.restoreLogicalViewId(AjaxStateManager.java:564)
    at org.ajax4jsf.application.AjaxStateManager.restoreStateFromSession(AjaxStateManager.java:495)
    at org.ajax4jsf.application.AjaxStateManager.restoreView(AjaxStateManager.java:444)
    at org.apache.myfaces.application.jsp.JspViewHandlerImpl.restoreView(JspViewHandlerImpl.java:515)
    at org.ajax4jsf.application.ViewHandlerWrapper.restoreView(ViewHandlerWrapper.java:107)
    at org.apache.myfaces.lifecycle.RestoreViewExecutor.execute(RestoreViewExecutor.java:85)
    at org.apache.myfaces.lifecycle.LifecycleImpl.executePhase(LifecycleImpl.java:103)
    at org.apache.myfaces.lifecycle.LifecycleImpl.execute(LifecycleImpl.java:76)
    at javax.faces.webapp.FacesServlet.service(FacesServlet.java:151)
    at org.apache.myfaces.webapp.MyFacesServlet.service(MyFacesServlet.java:103)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:290)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.ajax4jsf.webapp.BaseXMLFilter.doXmlFilter(BaseXMLFilter.java:206)
    at org.ajax4jsf.webapp.BaseFilter.handleRequest(BaseFilter.java:290)
    at org.ajax4jsf.webapp.BaseFilter.processUploadsAndHandleRequest(BaseFilter.java:388)
    at org.ajax4jsf.webapp.BaseFilter.doFilter(BaseFilter.java:515)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at com.coral.project.web.context.ExecutionContextFilter.doFilter(ExecutionContextFilter.java:75)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.springframework.orm.hibernate3.support.OpenSessionInViewFilter.doFilterInternal(OpenSessionInViewFilter.java:198)
    at org.springframework.web.filter.OncePerRequestFilter.doFilter(OncePerRequestFilter.java:76)
    at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:235)
    at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:206)
    at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:233)
    at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:191)
    at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:127)
    at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:102)
    at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:109)
    at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:298)
    at org.apache.coyote.http11.Http11Processor.process(Http11Processor.java:852)
    at org.apache.coyote.http11.Http11Protocol$Http11ConnectionHandler.process(Http11Protocol.java:588)
    at org.apache.tomcat.util.net.JIoEndpoint$Worker.run(JIoEndpoint.java:489)
    at java.lang.Thread.run(Thread.java:662)
Caused by: javax.crypto.BadPaddingException: Given final block not properly padded
    at com.sun.crypto.provider.SunJCE_f.b(DashoA13*..)
    at com.sun.crypto.provider.SunJCE_f.b(DashoA13*..)
    at com.sun.crypto.provider.DESCipher.engineDoFinal(DashoA13*..)
    at javax.crypto.Cipher.doFinal(DashoA13*..)
    at org.apache.myfaces.shared_impl.util.StateUtils.symmetric(StateUtils.java:452)
    ... 40 more

EDIT: Je pense que cela pourrait être utile de undersand mon problème:

entrez

Créé 10/08/2011 à 18:40
utilisateur
Dans d'autres langues...                            


1 réponses

voix
1

Si vous n'êtes pas sûr de ce que votre appel AJAX afin de réussir, la meilleure chose à faire est d'utiliser le proxy HTTP et enregistrer l'action. Cela vous donnera tous les paramètres qui sont transmis au serveur, ainsi que leurs valeurs au moment de l'enregistrement.

Ensuite, le cas échéant, vous faites les valeurs des paramètres dynamiques (idSession est un bon exemple).

Comment enregistrer :

Créé 11/08/2011 à 13:51
source utilisateur

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more