job*_*ani 8 java servlets apache-fop
我正在尝试使用FOP生成PDF文档.pdf生成代码保存在servlet中,xsl位于WebContent文件夹中的特定文件夹中.
如何通过提供相对路径来访问此xsl文件?它仅在我在File对象中提供完整路径时才有效.
我需要动态生成xml内容.如何将此动态生成的xml作为源而不是File对象?
请提供您的建议.
GBa*_*GBa 17
要获得您可以做的路径:
String path = s.getServletContext().getRealPath("/WEB-INF/somedir/hdfeeh");
Run Code Online (Sandbox Code Playgroud)
s是实现的类HTTPServlet.您也可以使用this.getServletContext()它的servlet类.
然后将其作为参数传递.
至于使用动态生成的XML,您正在使用的库应该支持使用输入流,编写XML,将其转换为字节数组,然后将其包装ByteArrayInputStream并使用它.
对于直接和独立的容器实现,您可以使用servlet中的以下方法getResource()访问资源:
/ start servlet /
public InputStream getResource(String resourcePath) {
ServletContext servletContext = getServletContext();
InputStream openStream = servletContext.getResourceAsStream( resourcePath );
return openStream;
}
public void testConsume() {
String path = "WEB-INF/teste.log";
InputStream openStream = getResource( path );
int c = -1;
byte[] bb = new byte[1024];
while ( -1 != ( c = openStream.read( bb ) ) ) {
/* consume stream */
}
openStream.close();
}
Run Code Online (Sandbox Code Playgroud)
/ end servlet /
| 归档时间: |
|
| 查看次数: |
34408 次 |
| 最近记录: |