da.winter: PDF Datei anzeigen

hallo,

ich hoffe ihr könnt mir weiterhelfen.
Ich habe mir in Java einen WebService gebastelt der folgendes tut.

Methode CreateAngebot()
Diese Methode soll später eine PDF Datei entgegennehmen, und diese auf dem Server abspeichern, gleichzeitig soll sie noch diverse Daten in eine Datenbank schreiben.

Das funktioniert soweit ganz gut

Methode GetAngebot()
Diese Methode bekommt eine Angebotsnummer übergeben und soll nun gucken ob die gesuchte Datei vorhanden ist. Wenn ja, soll als return wert das PDF dokument beim Client geöffnet werden.

Das suchen Funktioniert einwandfrei, jedoch ist mir nicht klar wie ich als return wert dem Client das PDF dokument anzeigen lassen kann.

Hier die besagte Methode:

public String GetAngebot(String pangebot)
 {
  usr  = "username";
  pwd  = "password";
  host = "jdbc:mysql://localhost:3306/Angebotsspeicher"; //Datenbank auf Server
  if(pangebot == null)
  {
   System.out.println("ERROR ANGEBOT CANNOT BE NULL!");
   return null;
  }
  else
   {
    try
    {
     System.out.println("Gesucht wird: "+pangebot);
     Class.forName("com.mysql.jdbc.Driver");    //JDBC Treiber laden
     con = DriverManager.getConnection(host, usr, pwd);  //Verbindung aufbauen
     smt =con.createStatement();
     String sql = "SELECT AngebotsNr From Angebotsspeicher.Angebotverzeichnis " +
          "WHERE AngebotsNr ="+pangebot;
     ResultSet rst = smt.executeQuery(sql);     //SQL Anweisung ausführen
     System.out.println("Angebot wird gesucht");   //Es wird nach der Angebotsnummer gesucht

while (rst.next())
      {
      speicherort = rst.getString(1);       //Gib mir das Verzeichnis wo die Datei liegt
      }
      con.close();
      smt.close();
    }
    catch(Exception ex)
    {
    System.out.println(ex);
    return null;
    }
    if (speicherort == null)
    {
     AngebotsAufrufe ca1 = new AngebotsAufrufe();
     ca1.CreateAngebot(pangebot);
     response = "Angebot nicht vorhanden. Erstelle es jetzt";
    }
    else
    {
     System.out.println("Angebot "+pangebot +" bereits vorhanden");
     response = "Angebots vorhanden, ich zeige es dir jetzt an"; //Hier soll dem Client das PDF  File angezeigt werden
    }
    return response;
   }
 }

Eine notlösung habe ich mit javascript hinbekommen, möchte aber viel lieber, dass der WebService die pdf Datei an den Client übergibt.

Falls irgendwer sich damit auskennt, schreibt bitte hier rein oder schickt mir ne mail. brauche drigend hilfe! :/

mfg Daniel

  1. Hallo,

    Ich habe mir in Java einen WebService gebastelt der folgendes tut.

    Methode GetAngebot()
    Diese Methode bekommt eine Angebotsnummer übergeben und soll nun gucken ob die gesuchte Datei vorhanden ist. Wenn ja, soll als return wert das PDF dokument beim Client geöffnet werden.

    Eine notlösung habe ich mit javascript hinbekommen, möchte aber viel lieber, dass der WebService die pdf Datei an den Client übergibt.

    Der Artikel: http://www.javaworld.com/javaworld/javatips/jw-javatip94.html sollte dir dabei weiterhelfen können.

    (oder wenn du es anderes machen willst könntest du mit der AcrobatAPI versuchen: http://today.java.net/pub/a/today/2005/10/20/accessing-pdf-with-acrobat-viewer-javabean.html)

    Grüße
    Thomas