Galera eu ja criei o applet, mas não consigo fazer ele rodar, o que é que eu jogo dentro do meu tom cat, a pasta de todo o projeto, ou só o jar, pois li bastante aqui sobre applet mas não to conseguindo, ele toda hora da erro de classnotfound vixi.class, poxa ja tentei de quase tudo…o que eu tenho que levar la pro meu tom cat ajuda ai galera???
O que preciso para o meu applett rode?
10 Respostas
O nome do Applet é vixi.class ??? :shock:
é sim …e o nome do projeto é óia…mas não vamos se apegar aos nomes, por que esses coloquei em momento de fúria rsrsrs de tanto tentar e não conseguir…a dúvida é se eu coloco só o jar ou algo mais?? eu compilei no netbeans…cara ajuda ai…eu ja coloquei no tomcat o jar, ja coloquei a pasta toda, e ta fogo um help ai
É melhor mesmo não nos apergarmos a nomes, mas só para lembrar,
mesmo em momentos de fúria seja polido e utilize o Sun code convention 
http://www.oracle.com/technetwork/java/codeconvtoc-136057.html
OK, esqueça por momento Netbeans, Tomcat, mulheres, etc… 
No seu HTML, verifique se o código para inserção do Applet segue o padrão baixo:
<applet code=NomeCompletoDaClasseApplet.class
archive="NomeDoJar.jar"
width=100 height=100>
</applet>
No código acima o Applet está no package default (diretório root do jar)
e o HTML e o JAR estão no mesmo diretório…
estava de fato diferente o html, o erro agora é o seginte
lastModified = 1284122298000
load: class vixi.class not found.
java.lang.ClassNotFoundException: vixi.class
at sun.plugin2.applet.Applet2ClassLoader.findClass(Unknown Source)
at java.lang.ClassLoader.loadClass(ClassLoader.java:399)
at java.lang.ClassLoader.loadClass(ClassLoader.java:332)
at sun.plugin2.applet.Plugin2ClassLoader.loadCode(Unknown Source)
at sun.plugin2.applet.Plugin2Manager.createApplet(Unknown Source)
at sun.plugin2.applet.Plugin2Manager$AppletExecutionRunnable.run(Unknown Source)
at java.lang.Thread.run(Thread.java:717)
Caused by: java.io.IOException: open HTTP connection failed:http://localhost:8080/oia/vixi/class.class
at sun.plugin2.applet.Applet2ClassLoader.getBytes(Unknown Source)
at sun.plugin2.applet.Applet2ClassLoader.access$000(Unknown Source)
at sun.plugin2.applet.Applet2ClassLoader$1.run(Unknown Source)
at java.security.AccessController.doPrivileged(Native Method)
eu criei uma coisa pequena só pra fazer um teste, vou postar o código aqui não é possivel que não estou conseguindo devo estar comendo alguma bola besta…
/*
* To change this template, choose Tools | Templates
* and open the template in the editor.
*/
/*
* vixi.java
*
* Created on 09/09/2010, 11:04:27
*/
package oia;
import java.text.DecimalFormat;
/**
*
* @author Udi
*/
public class Vixi extends javax.swing.JApplet {
int iTot, val1, val2;
String sTot;
DecimalFormat decimal = new DecimalFormat("0.00");
public void init() {
try {
java.awt.EventQueue.invokeAndWait(new Runnable() {
public void run() {
initComponents();
}
});
} catch (Exception ex) {
ex.printStackTrace();
}
}
/** This method is called from within the init() method to
* initialize the form.
* WARNING: Do NOT modify this code. The content of this method is
* always regenerated by the Form Editor.
*/
@SuppressWarnings("unchecked")
// <editor-fold defaultstate="collapsed" desc="Generated Code">
private void initComponents() {
btS = new javax.swing.JButton();
tf1 = new javax.swing.JTextField();
tf2 = new javax.swing.JTextField();
btD = new javax.swing.JButton();
lb1 = new javax.swing.JLabel();
btS.setText("Somar");
btS.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btSActionPerformed(evt);
}
});
tf1.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
tf1ActionPerformed(evt);
}
});
btD.setText("Diminuir");
btD.addActionListener(new java.awt.event.ActionListener() {
public void actionPerformed(java.awt.event.ActionEvent evt) {
btDActionPerformed(evt);
}
});
lb1.setFont(new java.awt.Font("Tahoma", 3, 16));
lb1.setText("jLabel1");
javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
getContentPane().setLayout(layout);
layout.setHorizontalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addGap(28, 28, 28)
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING, false)
.addComponent(tf2, javax.swing.GroupLayout.Alignment.LEADING)
.addComponent(tf1, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.PREFERRED_SIZE, 112, javax.swing.GroupLayout.PREFERRED_SIZE))
.addGap(18, 18, 18)
.addComponent(lb1, javax.swing.GroupLayout.PREFERRED_SIZE, 79, javax.swing.GroupLayout.PREFERRED_SIZE)
.addContainerGap(47, Short.MAX_VALUE))
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addContainerGap(74, Short.MAX_VALUE)
.addComponent(btS)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(btD)
.addGap(68, 68, 68))
);
layout.setVerticalGroup(
layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
.addGroup(layout.createSequentialGroup()
.addContainerGap(46, Short.MAX_VALUE)
.addComponent(tf1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
.addComponent(tf2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
.addGap(49, 49, 49))
.addGroup(layout.createSequentialGroup()
.addGap(62, 62, 62)
.addComponent(lb1)
.addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)))
.addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
.addComponent(btS)
.addComponent(btD))
.addGap(55, 55, 55))
);
}// </editor-fold>
private void tf1ActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
}
private void btSActionPerformed(java.awt.event.ActionEvent evt) {
calc();
iTot = val1 + val2;
sTot = decimal.format(iTot);
lb1.setText(sTot);
}
private void btDActionPerformed(java.awt.event.ActionEvent evt) {
calc();
iTot = val1 - val2;
sTot = decimal.format(iTot);
lb1.setText(sTot);
}
public void calc(){
val1 = Integer.parseInt(tf1.getText());
val2 = Integer.parseInt(tf2.getText());
}
// Variables declaration - do not modify
private javax.swing.JButton btD;
private javax.swing.JButton btS;
private javax.swing.JLabel lb1;
private javax.swing.JTextField tf1;
private javax.swing.JTextField tf2;
// End of variables declaration
}
manhanijava, tente o seguinte:
<applet code="nomeDaClasse" archive="nomeDoArquivoJar.jar" mayscript ></applet>
Ah, coloque as medidas a gosto,
Abs,
manhanijava, tente o seguinte:<applet code="nomeDaClasse" archive="nomeDoArquivoJar.jar" mayscript ></applet>Ah, coloque as medidas a gosto,
Abs,
medeiros fala pra mim, o que eu tenho que levar la pro tom cat???
Dentro do seu projeto, dentro da pasta WebContent, onde tem a página, vc tb vai ter esse jar, que contém a sua classe junta. É o suficiente. Como você gerou o jar?
Engraçado, o povo fala tanto em HTML 5, web 2.0 ou 3.0, e quando chega num tópico de applet, fala para o cara usar a tag APPLET, que é deprecated, segundo o próprio W3C: http://www.w3.org/TR/REC-html40/struct/objects.html#h-13.4
E não existirá no HTML 5.
O ideal é usar para isso o JNLP:
http://download.oracle.com/javase/tutorial/deployment/applet/deployingApplet.html
Em conjunto com ele o Java Deployment Toolkit, com um javascript que facilita muito o deploy multiplataforma dos applets:
http://download.oracle.com/javase/tutorial/deployment/deploymentInDepth/runAppletFunction.html
eu criei a classe e compilei no netbeans…
Um applet que fiz, consegui fazer funcionar da seguinte forma:
1 - Criei a classe sem pacote;
2 - Compilei uso o comando: javac -Xlint -classpath .;“C:\Arquivos de programas\Java\jdk1.5.0_09\jre\lib\plugin.jar” minhaClasse.java
3 - Criei o jar com o comando: jar -cvf meuJar.jar *.class
4 - Copiei para a pasta que estava minha jsp;
5 - Coloquei na jsp o código que já postei.
Funcionou aqui.