Bom dia,
Estou tentando imprimir um nota fiscal em uma impressora matricial, criei uma dll em Delphi no padrão JNI, e estou tentando carregar ela em um Applet.
- Criei uma classe que carrega a dll, arquivo em anexo: NotaFiscal.java
class NotaFiscal
{
public native void imprimeNota( int notaID );
static
{
System.loadLibrary("wms");
}
}
- Criei uma applet, arquivo em anexo Nota.java
import java.applet.*;
import java.awt.*;
public class Nota extends Applet {
public void init(){
}
public void start() {
int notaID = 508;
NotaFiscal hw = new NotaFiscal();
hw.imprimeNota( notaID );
}
public void paint(Graphics g) {
g.setColor(Color.red);
g.drawString("Teste de Applet",5,10);
}
}
- E um html que carrega a applet, arquivo em anexo Nota.html
<head>
<title>Teste - Olá Mundo</title>
</head>
<applet code="Nota.class" width="300" height="300"></applet>
</html>
Obs.: a dll neste teste, deveria imprimir um arquivo TXT em c:\impressao.txt e exibir uma mensagem na tela.
mas aparece esse erro, eu executei direto pelo prompt com esse comando: appletviwer Nota.html:
C:\j2sdk1.4.2_06\bin>javac Nota.java
C:\j2sdk1.4.2_06\bin>javac NotaFiscal.java
C:\j2sdk1.4.2_06\bin>appletviewer Nota.html
java.lang.ExceptionInInitializerError
at Nota.start(Nota.java:11)
at sun.applet.AppletPanel.run(AppletPanel.java:377)
at java.lang.Thread.run(Thread.java:534)
Caused by: java.security.AccessControlException: access denied (java.lang.Runtim
ePermission loadLibrary.wms)
at java.security.AccessControlContext.checkPermission(AccessControlConte
xt.java:269)
at java.security.AccessController.checkPermission(AccessController.java:
401)
at java.lang.SecurityManager.checkPermission(SecurityManager.java:524)
at java.lang.SecurityManager.checkLink(SecurityManager.java:810)
at java.lang.Runtime.loadLibrary0(Runtime.java:782)
at java.lang.System.loadLibrary(System.java:834)
at NotaFiscal.<clinit>(NotaFiscal.java:6)
... 3 more
Agradeço qualquer ajuda.
[]´s
Sandro Borges