Java Tutorial/Servlet/Path
Get path info from Servlet Request
<source lang="java">
import java.io.*; import javax.servlet.*; import javax.servlet.http.*; public class MyServlet extends HttpServlet {
public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { res.setContentType("text/plain"); PrintWriter out = res.getWriter(); if (req.getPathInfo() != null) { out.println("The file \"" + req.getPathInfo() + "\""); out.println("Is stored at \"" + req.getPathTranslated() + "\""); } else { out.println("Path info is null, no file to lookup"); } }
}</source>
Get real path from Servlet Request
<source lang="java">
import java.io.*; import java.text.*; import java.util.*; import javax.servlet.*; import javax.servlet.http.*; public class MyServlet extends HttpServlet {
public void doGet(HttpServletRequest req, HttpServletResponse res) throws ServletException, IOException { res.setContentType("text/plain; charset=Shift_JIS"); PrintWriter out = res.getWriter(); res.setHeader("Content-Language", "ja"); Locale locale = new Locale("ja", ""); DateFormat full = DateFormat.getDateTimeInstance(DateFormat.LONG, DateFormat.LONG, locale); out.println("In Japanese:"); try { FileInputStream fis = new FileInputStream(req.getRealPath("/HelloWorld.ISO-2022-JP")); InputStreamReader isr = new InputStreamReader(fis, "ISO-2022-JP"); BufferedReader reader = new BufferedReader(isr); String line = null; while ((line = reader.readLine()) != null) { out.println(line); } } catch (FileNotFoundException e) { e.printStackTrace(); } out.println(full.format(new Date())); }
}</source>