我正在使用JSF 2.0,Tomcat 7.0,5.0和primefaces Viewer.js对项目索引pdf文件进行搜索,显示结果和查看文档。 问题是我需要从PC的文件系统打开PDF文档,我使用Viewer.js认为这个项目的最佳选择但仍然无法打开任何想法怎么做?我只是设法在我的项目的文件夹中打开。
我尝试打开文档的方式如下:
<h:form id="form">
<p:dataList id="bus" value="#{beanBusqueda.bus}" var="busqueda" type="unordered" itemType="none" paginator="true" rows="20" emptyMessage="Sin resultados por el momento" paginatorAlwaysVisible="true">
<a href="http://localhost:8080/i-Bi/Viewer.js/#../file:///C:/directoriov1/#{busqueda.ruta}">Ver</a>
<h:outputText value="#{busqueda.resultados}" id="info"/>
<f:facet name="footer"><h:outputText value="#{beanBusqueda.buscar.info}" style="font-weight:normal"/></f:facet>
</p:dataList>
</h:form>
我得到了我的ManagedBean:
public void buscar() throws IOException{
setBus(new ArrayList<csBuscar>());
String resul="";
try {
directorio= FSDirectory.getDirectory(direct, false);
searcher= new IndexSearcher(directorio);
parser= new QueryParser("content", new StandardAnalyzer());
long start= new Date().getTime();
Query consulta= parser.parse(buscar.getBusqueda());
Hits hits = searcher.search(consulta);
long end= new Date().getTime();
Document doc=null;
if(hits.length()==0){
buscar.setResultados("No se encontraron resultados para "+buscar.getBusqueda());
}else{
for(int i=0;i<hits.length();i++){
doc=hits.doc(i);
//resul+=doc.get("nombre").substring(0,doc.get("nombre").length()-4)+"\n";
bus.add(new csBuscar(doc.get("nombre").substring(0,doc.get("nombre").length()-4)+"\n", doc.get("nombre")));
System.out.println(doc.get("absolute"));
}buscar.setResultados(resul);
buscar.setInfo("Se muestran "+hits.length()+" resultados para "+buscar.getBusqueda()+" en "+(end-start)+" milisegundos.");
System.out.println(buscar.getResultados());
}
} catch (Exception e) {
e.printStackTrace();
}
finally{
searcher.close();
}
}
我也在尝试以下路线:
Viewer.js / # .. / C :/ directoriov1 / # {busqueda.ruta}
http://localhost:8080/i-Bi/Viewer.js/ # .. / C :/ directoriov1 / # {busqueda.ruta}
但我不能把它打开。 我是否必须修改代码才能获得Viewer.js? 希望建议谢谢。
答案 0 :(得分:0)
您是否考虑过使用谷歌的文档查看器?
这将在iframe中打开,您只能更改pdf的网址。
https://docs.google.com/viewer
iframe示例:
<iframe src="http://docs.google.com/viewer?url=http%3A%2F%2Fs3.documentcloud.org%2Fdocuments%2F509922%2Ffernandez-cristina-elisabet-anual-2011.pdf&embedded=true" width="600" height="780" style="border: none;"></iframe>
Saludos!