iText som bruges i GWT
HejsaJeg har et lille problem når jeg bruger iText sammen med GWT. Som jeg kan se så bliver pdf dokument helt fint genereret (jeg kan sagtens åbne pdf dokumentet når jeg dobbeltklikker på filen og alt ser fint ud). dog når jeg bruger GWT til at åbne filen brokker den sig over at den ikke kan finde filen. Hvis jeg så lukker programmet og åbner det igen så kan den sagtens åbne filen. Så min tanke er om der er et eller andet i systemet som bruger filen?!?! Håber i kan forklare mig eller se hvad jeg gør galt siden jeg ikke kan åbne pdf dokumentet første gang
Her er et helt basalt eksempel som ikke virker.
public class Stuff implements EntryPoint {
/**
* This is the entry point method.
*/
public void onModuleLoad() {
final Button button = new Button("Click me");
final Label label = new Label();
button.addClickListener(new ClickListener() {
public void onClick(Widget sender) {
if (label.getText().equals("")) {
StuffService.App.getInstance().getMessage("Hello, World!", new MyAsyncCallback(label));
} else {
label.setText("");
}
}
});
// Assume that the host HTML has elements defined whose
// IDs are "slot1", "slot2". In a real app, you probably would not want
// to hard-code IDs. Instead, you could, for example, search for all
// elements with a particular CSS class and replace them with widgets.
//
RootPanel.get("slot1").add(button);
RootPanel.get("slot2").add(label);
}
private static class MyAsyncCallback implements AsyncCallback<String> {
private Label label;
public MyAsyncCallback(Label label) {
this.label = label;
}
public void onSuccess(String result) {
DOM.setInnerHTML(label.getElement(), result);
Window.open("http://localhost:8888/stuff.Stuff/Faktura/test/test.pdf","_blank","disabled");
}
public void onFailure(Throwable throwable) {
label.setText("Failed to receive answer from server!");
}
}
}
public class StuffServiceImpl extends RemoteServiceServlet implements StuffService {
// Implementation of sample interface method
public String getMessage(String msg) {
new TestCreatePDF();
return "Client said: \"" + msg + "\"<br>Server answered: \"Hi!\"";
}
}
public class TestCreatePDF {
public TestCreatePDF() {
Document document=new Document();
try {
PdfWriter.getInstance(document,new FileOutputStream("C:\\Documents and Settings\\Martin\\IdeaProjects\\tester\\src\\test\\nielsson\\stuff\\public\\Faktura\\test\\test.pdf"));
document.open();
document.add(new Paragraph("Hello Pdf"));
document.close();
} catch (DocumentException e) {
e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
} catch (FileNotFoundException e) {
e.printStackTrace(); //To change body of catch statement use File | Settings | File Templates.
}
}
}
håber i kan hjælpe.