Problème d'appel à une servlet avec HREF et chemin relatif

Problème d'appel à une servlet avec HREF et chemin relatif - Java - Programmation

Marsh Posté le 09-03-2006 à 11:55:53    

Salut,
 
Je fais des appel à une FrontalServlet de deux manières à partir d'une jsp:

  • Code :
    1. <form action="
    2. FrontalServlet?key=metaCustomer_showCreateUpdate&metaCustomerId= ...

  • Code :
    1. <select name="CustomerList" class="petitsChars" id="CustomerList" onchange="parent.mainFrame.location.href='../../FrontalServlet?key=metaCustomer_admin&metaCustomerId= ...


Dans le deuxième cas j'utilise un chemin relatif car en mettant 'FrontalServlet ...' directement ca ne marche pas.
Mon problème concerne justemnt le deuxième cas:

  • La première fois, lorsque je selectionne kelke chose le onchange fait bien appel à la servlet et me renvoi à ma page jsp après un traitement. (avec un this.getServletContext().getRequestDispatcher(/jsp/louis/majsp.jsp).forward(request,response); ) =>Ca Ok.
  • Mais une fois renvoyée à ma jsp, si je rechange une fois ma selection, le chemin relatif ne marche pas et j'ai une erreur du type:  
Code :
  1. The requested URL /FrontalServlet was not found on this server.


Comme si le contexte avait changé!
 
Ci joint le code de la déclaration de ma servlet ds le web.xml:
 

Code :
  1. <!-- Frontal Servlet des fonctions Louis -->
  2.     <servlet>
  3.      <servlet-name>FrontalServlet</servlet-name>
  4.      <servlet-class>louis/FrontalServlet</servlet-class>
  5.     </servlet>
  6.     <!-- mapping de la Servlet de Louis -->
  7.     <servlet-mapping>
  8.              <servlet-name>FrontalServlet</servlet-name>
  9.      <url-pattern>/FrontalServlet</url-pattern>
  10.     </servlet-mapping>


 
Ps: précision importante, j'utilise aussi struts (et dc l'ActionServlet dans d'autre pages de mon appli!)
 
 
Merci bcp pr votre aide je suis vraiment bloquée!!!

Reply

Marsh Posté le 09-03-2006 à 11:55:53   

Reply

Marsh Posté le 09-03-2006 à 12:32:49    

Essayes de mettre ca dans le <head> de ta page

<base href="<%= request.getScheme()%>://<%= request.getServerName()%>:<%=request.getServerPort()%><%=request.getContextPath()%>/">


 
Sinon dans le parent.mainFrame.location.href essayes de mettre l'URL complete.

Reply

Marsh Posté le 09-03-2006 à 13:23:08    

Merci! mais ca ne marche tjs pas!
Et si je mets l'url complete ca ne marche pas des la première fois ke je select.

Reply

Marsh Posté le 09-03-2006 à 14:16:08    

En fait en changeant mon server.xml (config de tomcat) en définissant FrontalServlet avec le chemin de mon appli (parce k'il semblait se perdre..) et en mettant  
 
<base href="<%= request.getScheme()%>://<%= request.getServerName()%>:<%=request.getServerPort()%><%=request.getContextPath()%>/">
 
comme tu me l'as conseillé, ca a marché!!!!
 
Merci bcp.
 

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed