J'ai dû faire un petit travail d'édition de données, j'ai donc décidé de créer une application Web simple et de continuer avec l'interface graphique. Puisque je l'utilise personnellement, je n'ai pas à me soucier de la maintenabilité. Quoi qu'il en soit, j'ai juste besoin de le faire rapidement. J'avais Eclipse sur mon appareil, je vais donc créer une application Web dynamique en Java avec Eclipse. Créez un projet ou un servlet à partir d'un modèle, puis codez-le.
Cependant, lorsque j'essaye d'accéder au servlet Java à partir de jsp avec ajax, il ne répond pas. C'était un gros problème.
<web-app>
<servlet>
<servlet-name>test</servlet-name>
<servlet-class>TestServlet</servlet-class>
</servlet>
<servlet-mapping>
<servlet-name>test</servlet-name>
<url-pattern>/test</url-pattern>
</servlet-mapping>
</web-app>
$ajax({
url:'/testapp/test',
type:'POST',
data:{
'param1':'aaa',
'param2':'bbb'
}
})
.done((data)=> {console.log("done!");})
.fail((data)=> {console.log("fail!");})
.always((data)=> {console.log("always!");})
@WebServlet("/TestServlet")
public class TestServlet extends HttpServlet {
public TestServlet() {...}
protected void doGet(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {...}
protected void doPost(HttpServletRequest request, HttpServletResponse response) throws ServletException, IOException {...}
}
fail!
always!
Je n'ai pas pu atteindre TestServlet et je n'ai aucune idée de ce qui l'a causé.
Donc, quand j'ai regardé de près, j'étais curieux de savoir le @WebServlet (" / TestServlet ")
qui était inclus lorsque TestServlet.java était généré automatiquement.
Bon chagrin. J'ai cherché.
[Spécifiez le modèle d'URL avec @WebServlet] (https://code-examples-ja.hateblo.jp/entry/2015/10/22/%40WebServlet%E3%81%A7URL%E3%83%91%E3%82%BF%E3%83%BC%E3%83%B3%E3%82%92%E6%8C%87%E5%AE%9A)
Magnifique. Vous n'êtes pas obligé d'écrire web.xml ... J'ai supprimé la description dans web.xml et changé l'url d'ajax en `` / testapp / TestServlet '' et cela a fonctionné sans difficulté.
Si vous comptez généralement sur des frameworks et des modèles, vous deviendrez un ingénieur fossile. L'étude quotidienne apparaît clairement dans la vitesse de développement au moment de l'urgence.
Recommended Posts