Mam taka stronę JSP
<!DOCTYPE DOCTYPE PUBLIC "-//W3C//DTD HTML 4.0 Final//EN">
<%@ page language="java" contentType="text/html; charset=ISO-8859-2" pageEncoding="ISO-8859-2" %>
<%@ page import="java.io.*"%>
<%@ page import="java.net.*"%>
<html>
<%! public void copyFile(String source,String target)
{
try
{
URL urlJsp=new URL("http://localhost:8080/my_examples/jsp/"+source);
URLConnection connJsp=urlJsp.openConnection();
BufferedReader input=new BufferedReader(new InputStreamReader(connJsp.getInputStream()));
URL urlTxt=new URL("http://localhost:8080/my_examples/jsp/"+target);
URLConnection connTxt=urlTxt.openConnection();
connTxt.setDoOutput(true);
OutputStreamWriter output=new OutputStreamWriter(connTxt.getOutputStream());
String linia="";
answer=new StringBuffer("");
while((linia=input.readLine())!=null)
{
output.write(linia,0,linia.length()); // wiersz 21
answer.append(linia);
}
input.close();
output.close();
}
catch(Exception e)
{
status=e.toString();
}
}
public String status="";
public StringBuffer answer=new StringBuffer("");
%>
<% String jspName=request.getParameter("fileName");
String txtName=jspName.replace(".jsp",".txt");
copyFile(jspName,txtName);
%>
<body>
<%= status %>
<%= "jspName: "+jspName+" \n" %>
<%= "txtName: "+txtName+" \n" %>
<%= answer %>
<%-- <% response.sendRedirect(txtName); %> --%>
</body>
</html>
Mój cel jest następujący, utworzyc nowy plik (w katalogu aplikacji) i go wyświetliś.
Pytania do powyższego kodu są następujące:
- nie ma błędów wykonania - zmienna status=="",zmienna answer zawiera co trzeba, ale plik opisany przez urlText nie powstaje, co zatem robi wiersz 21,
- adres serwera (aplikacji)
http://localhost:8080/my_examples
wpisany jest na sztywno, czy można go odczytać programowo,
- czy można (trzeba) zrobić to zupełnie inaczej (korzystając tylko z plików jsp)?