2012-11-19 3 views
5

XSL과 XML을 사용하여 PDF를 생성하는 작은 서블릿이 있습니다. 내가Java로 URL의 매개 변수 검색

c:\xml\test.xml 
c:\xsl\test.xsl 

입니다 필요

localhost/Servlet?xml=c:\xml\test.xml&xsl=c:\xsl\test.xsl 

그래서 매개 변수를 그는 변수 XML로 읽을 필요가 : 나는 URL을 통해 파일을 지정하려면 때문에 나는 거기에서 그 매개 변수를 얻을 필요 -file 및 xsl-file.

내가 변수에 값을 적용하는 방법을 알고하지 않기 때문에 그 그러나이 정말 제 생각 엔 저를 도움이되지 않습니다 있습니다

Map para = request.getParameterMap(); 
java.util.Iterator it = params.keySet().iterator(); 

while (it.hasNext()) 
{ 
    String key = (String) it.next(); 
    String value = ((String[]) para.get(key))[ 0 ]; 
} 

그 작업을 수행하는 방법에 대한 어떤 생각을?

감사합니다,

TheVagabond

+1

URL 매개 변수로 파일 경로를 보내는 것은 ** 매우 나쁜 생각 : 1.) 시스템에 대한 불필요한 정보를 제공합니다. 2. "유효한"파일 만 참조되는지 확인하기가 어렵습니다. 3) 다른 시스템으로 전환합니다. 내부적으로 더 힘들다. (파일 이름을 다룰 필요가 있기 때문에) 4. 다른 이유가있다. –

+0

서블릿 배포를 소스 파일과 동일한 파일 시스템에 묶는다. –

+0

나는 그것이 좋은 생각이 아니라는 것을 알고있다. 그러나이 특별한 경우에는 그렇게되고 싶어한다. 그래서 나는 그것을한다 :-) – Thevagabond

답변

6

SERVLET에서 요청해야합니까?

문자열 xml_path = request.getParameter ("xml");

문자열 xsl_path = request.getParameter ("xsl");

2

이 문제점은 무엇입니까?

2
당신은 단지 HttpServletRequest.getParameter()와 이름으로 매개 변수를 얻을 수

...

String xml-file = request.getParameter("xml"); 
String xsl-file = request.getParameter("xsl"); 
+0

- 작동하지 않았다. 작동 too – Thevagabond

3

나는 당신이 단순히 request.getParameter(String param)

예를 원한다고 생각 위의 여러xml 매개 변수를 처리하지 않습니다 (나중에 참조)

String xml = request.getParameter("xml"); 

참고. 이를 위해 사용해야합니다. request.getParameterValues(String param)

위에서 언급 한 것처럼 파일 이름을 전달하면 안됩니다. 우선 파일을 업로드하고 PDF를 생성 한 다음 (간단히 응답을 통해 또는 서블릿 배포에 로컬로 저장하고 나중에 검색하기 위해 ID를 반환하는)

+0

하나의 xml 및 하나의 xsl 매개 변수가 있습니다. – Thevagabond

관련 문제