Ola senhores,
Estou criando uma aplicação web no Glassfish e ocorreu um caso que seria interesante que meu JSP extendese um determinado Servlet. Implementei-os e testei no Tomcat, funcionou perfeitamente, mas essa semana que comecei a migrar a aplicação para o Glassfish este parou de funcionar e apresentou o seguinte erro.
HTTP Status 405 - HTTP method GET is not supported by this URL
@SuppressWarnings("serial")
public abstract class WebTopServlet extends HttpServlet {
/*
* (non-Javadoc)
* @see javax.servlet.http.HttpServlet#doGet(javax.servlet.http.HttpServletRequest, javax.servlet.http.HttpServletResponse)
*/
@Override
public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException {
super.doGet(req, res);
}
/*
* (non-Javadoc)
* @see javax.servlet.GenericServlet#destroy()
*/
@Override
public void destroy() {
super.destroy();
}
/*
* (non-Javadoc)
* @see javax.servlet.GenericServlet#init(javax.servlet.ServletConfig)
*/
@Override
public void init(ServletConfig config) throws ServletException {
super.init(config);
}
protected void createMenuTree(AbstractMenu menu, JspWriter out) throws Exception {
if (menu instanceof MenuTree) {
out.println("<div id=\""+menu.getCode()+"\" class=\"menu\">");
for(AbstractMenu m : ((MenuTree)menu).getMenus()) {
createMenuNode(m, out);
}
out.println("</div/>");
for(AbstractMenu m : ((MenuTree)menu).getMenus()) {
createMenuTree(m, out);
}
}
}
protected void createMenuNode(AbstractMenu menu, JspWriter out) throws Exception {
if (menu instanceof MenuTree) {
out.println("<a id=\""+menu.getCode()+"\" class=\"{menu:'"+menu.getCode()+"', img: 'icon_14.png'}\" >"+menu.getName()+"</a>");
} else if (menu instanceof MenuNode) {
out.println("<a href=\"#\" class=\"{img: 'ico_view.gif'}\" >"+menu.getName()+"</a>");
} else if (menu instanceof MenuCustom) {
MenuCustom mc = (MenuCustom) menu;
if (mc.getStyleType() == MenuCustom.StyleType.SEPARATOR) {
out.println("<a rel=\"separator\" > </a>");
} else {
out.println("<a rel=\"text\" >"+mc.getHtml()+"</a>");
}
}
}
}
e o JSP
<%@ page language="java" contentType="text/html; charset=UTF-8" pageEncoding="UTF-8"%>
<%@ page extends="com.engecorps.gaia.portal.WebTopServlet" %>
<%--@ taglib prefix="f" uri="http://java.sun.com/jsf/core"--%>
<%--@ taglib prefix="h" uri="http://java.sun.com/jsf/html"--%>
<%@page import="java.util.List"%>
<html>
<head>
<meta charset="utf-8">
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<meta http-equiv="x-ua-compatible" content="ie=edge" />
</head>
<body>
<div id="ui-menubar" align="left">
<table class="rootVoices" cellspacing='0' cellpadding='0' border='0'><tr>
<%
List<MenuBar> menusBar = ControllerEngine.load(MenuBar.class);
for(MenuBar menuBar : menusBar) {
out.println("<td class=\"rootVoice {menu: '"+menuBar.getCode()+"'}\" >"+menuBar.getName()+"</td>");
}
%>
</tr></table>
</div>
<%
for(MenuBar menuBar : menusBar) {
createMenuTree(menuBar, out);
}
%>
</div>
</body>
</html>
Alguém tem uma idéia se no Glassfish eu preciso implementar ou estender outra classe?