Boa tarde amigo, estou criando uma aplicação java desktop na qual preciso abrir um pdf dentro da propria aplicação, tenho o seguinte código só que está dando o erro, quem puder me ajudar agradeço.
segue o erro:
Exception in thread "main" java.lang.NoClassDefFoundError: com/apple/mrj/MRJAboutHandler
at javaapplication23.ExibePDF.main(ExibePDF.java:29)
Caused by: java.lang.ClassNotFoundException: com.apple.mrj.MRJAboutHandler
at java.net.URLClassLoader$1.run(URLClassLoader.java:299)
at java.net.URLClassLoader$1.run(URLClassLoader.java:288)
at java.security.AccessController.doPrivileged(Native Method)
at java.net.URLClassLoader.findClass(URLClassLoader.java:287)
at java.lang.ClassLoader.loadClass(ClassLoader.java:392)
at sun.misc.Launcher$AppClassLoader.loadClass(Launcher.java:334)
at java.lang.ClassLoader.loadClass(ClassLoader.java:332)
... 1 more
Java Result: 1
Segue o código:
[code]import javax.swing.*;
import java.io.*;
import com.adobe.acrobat.*;
import java.awt.*;
public class ExibePDF{
public static void main(String args[]){
InputStream input;
Viewer viewer;
JFrame frame = new JFrame("Visualização de Arquivo PDF");
frame.setLayout(new BorderLayout());
try{
viewer = new Viewer();
frame.add(viewer, BorderLayout.CENTER);
input = new FileInputStream (new File("C:/Documents and Settings/Administrador/Desktop/teste.pdf"));
if(input != null){
ByteArrayOutputStream output = new ByteArrayOutputStream();
// set read buffer size
byte[] rb = new byte[1024];
int ch = 0;
while ((ch = input.read(rb)) != -1){
output.write(rb, 0, ch);
}
byte[] b = output.toByteArray();
input.close();
output.close();
viewer.setDocumentInputStream(new ByteArrayInputStream(b));
}
viewer.activate();
viewer.setProperty("Default_Page_Layout", "SinglePage");
viewer.setProperty("Default_Zoom_Type", "FitVisibleWidth");
viewer.setProperty("Default_Magnification", "100");
frame.setSize(800, 600);
frame.setDefaultCloseOperation(JFrame.DISPOSE_ON_CLOSE);
frame.setVisible(true);
}
catch(Exception e){
JOptionPane.showMessageDialog(null,
"Não foi possível abrir o arquivo!",
"Erro", JOptionPane.ERROR_MESSAGE);
System.exit(0);
}
}
}