# HG changeset patch # User František Kučera # Date 1311254458 -7200 # Node ID 5ec59a8d902e08d2c35909fd2619de89287eddd2 # Parent f106b3043c0c1f9f4b353d6cbae7b9dedbfe4710 Systematičtější extrahování ID objektu z URL diff -r f106b3043c0c -r 5ec59a8d902e java/nekurak.net-web/src/java/cz/frantovo/nekurak/servlet/PodnikServlet.java --- a/java/nekurak.net-web/src/java/cz/frantovo/nekurak/servlet/PodnikServlet.java Thu Jul 21 15:20:32 2011 +0200 +++ b/java/nekurak.net-web/src/java/cz/frantovo/nekurak/servlet/PodnikServlet.java Thu Jul 21 15:20:58 2011 +0200 @@ -23,10 +23,7 @@ protected void doGet(HttpServletRequest požadavek, HttpServletResponse odpověď) throws ServletException, IOException { super.doGet(požadavek, odpověď); - String[] parametryCesty = (požadavek.getPathInfo().split("/")); - int id = Integer.parseInt(parametryCesty[1]); - - Podnik p = ejb.getPodnik(id); + Podnik p = ejb.getPodnik(getIdCesty(požadavek)); if (p == null) { odpověď.sendError(HttpServletResponse.SC_NOT_FOUND); @@ -38,6 +35,7 @@ } /** + * TODO: OpenStreetMap.org * @return URL mapy – obrázku nebo null při chybě nebo absenci souřadnic */ private String getMapa(Podnik p) { diff -r f106b3043c0c -r 5ec59a8d902e java/nekurak.net-web/src/java/cz/frantovo/nekurak/servlet/SuperServlet.java --- a/java/nekurak.net-web/src/java/cz/frantovo/nekurak/servlet/SuperServlet.java Thu Jul 21 15:20:32 2011 +0200 +++ b/java/nekurak.net-web/src/java/cz/frantovo/nekurak/servlet/SuperServlet.java Thu Jul 21 15:20:58 2011 +0200 @@ -17,7 +17,6 @@ public static final String PARAMETR_JAZYK = "jazyk"; private static final String ATRIBUT_JAZYK = "javax.servlet.jsp.jstl.fmt.locale.session"; private static final String ADRESAR_SABLON = "/WEB-INF/casti/"; - @Override protected void doGet(HttpServletRequest požadavek, HttpServletResponse odpověď) throws ServletException, IOException { @@ -25,16 +24,28 @@ } /** + *

Vytáhne z požadované cesty (konec URL) ID objektu.

+ * + *

Příklad: + * pro GET /podnik/123 + * vrátí 123 (podnik je název objektu/akce) + *

+ * + * @param požadavek HTTP požadavek + * @return ID objektu + */ + protected int getIdCesty(HttpServletRequest požadavek) { + String[] parametryCesty = (požadavek.getPathInfo().split("/")); + return Integer.parseInt(parametryCesty[1]); + } + + /** * Vykreslí stránku pomocí JSP šablony * @param jsp JSP šablona stránky – např. detail.jsp (nacházejí se v /WEB-INF/casti/) */ protected void zpracujJSP(String jsp, HttpServletRequest požadavek, HttpServletResponse odpověď) throws ServletException, IOException { /** Nastavení správného MIME typu */ //požadavek.setAttribute("jspMimeTyp", MIME_TYP); - - - - /** * odpověď.setContentType(MIME_TYP); – nefunguje (JSP si tam procpe svoje text/xml) */