Bienvenido(a), Visitante. Favor de ingresar o registrarse.

Ingresar con nombre de usuario, contraseña y duración de la sesión

Foros del Club

Páginas: [1]   Ir Abajo
  Enviar tema  |  Imprimir  
Autor Tema: Aqui dejo mi codigo  (Leído 1662 veces)
0 Usuarios y 1 Visitante están viendo este tema.
angel.caido.86
Sage
*****

Prestigio: -1
Desconectado Desconectado

Estudiante de: INFORMATICA
Mensajes: 14



Lenguajes:
INTENTO CON JAVA
« en: 07/02/2008, 21:56:22 »

Aqui esta el codigo del applet que me ha estado dando problemas aver si hay alguien que me pueda decir el por que no funciona en Internet...

PARAMETROS:
Estos son los parametros de la pagina que mando al applet

<PARAM NAME = ImageURL   VALUE = "Image\">
<PARAM NAME = IconURL   VALUE = "Icon\">
 
El path es relativo




import java.awt.Image.*;
import java.applet.*;
import javax.swing.*;
import javax.swing.JButton.*;
import java.awt.*;
import java.awt.event.*;
import java.net.URL;
public class Selection extends Applet implements MouseListener{
int numImagenes=6;
String IconURL;
String ImageURL;

public ImageIcon[] vecImage=new ImageIcon[numImagenes];
                   
public JButton[] vecButton=new JButton[numImagenes];

public ImageIcon iconSig;
public ImageIcon iconPrev;

JButton sig;
JButton prev;

int i=0;
int ini,fin;
int x=95;   //punto de inicio de la tira de imagenes
int y=20;

ImageCanvas canvas;

public String[] vec=new String[numImagenes];
   
Color fondo=Color.black;
Color sombra=new Color(90,70,60);
//-----------------------------------------------------------------------------
    public void init(){
        IconURL=getParameter("IconURL");
        ImageURL=getParameter("ImageURL");
        //creo un vector de Strings que contiene los los nombres de las imagenes
        //que se van a cargar en rel canvas
       //Las imagenes se llaman "1.jpg","2.jpg".   etc..... hasta llegar a numImagenes......
       
             for(int i=0;i<vec.length;i++)
            vec=ImageURL+String.valueOf(i+1)+".jpg";
                     
        this.setBackground(fondo);
        this.resize(540,1000);
        this.setLayout(null);
       
        ini=0;  //indice del principio de la tira de Imagenes       
        fin=2;  //indice del fin de la tira de Imagenes
        int x=95;  //punto de inicio de la tira de imagenes
        int y=20;   //------------------------------------
       
        //Los iconos llevan el mismo nombre de la imagen pero con extension .gif
        for(int i=1;i<=vecButton.length;i++){
            vecImage[i-1]=new ImageIcon(IconURL+String.valueOf(i)+".gif");
        }
       
        //creacion de los botones
        for(int i=0;i<vecButton.length;i++){
            vecButton=new JButton(vecImage);
        }
        //añadiendo los botones al applet
            dibujarTira();
        //agregandoles un oyente
        for(int i=0;i<vecButton.length;i++)
            vecButton.addMouseListener(this);
        //para darles a los botones un fondo negro
        for(int i=0;i<vecButton.length;i++)
            vecButton.setBackground(fondo);
       
        //creacion del canvas
        Image img=getImage(getCodeBase(),vec);
        canvas=new ImageCanvas(400,600,img);
        canvas.setBounds(20,200, 500, 650);
        iconSig=new ImageIcon(IconURL+"sig.gif");
        iconPrev=new ImageIcon(IconURL+"prev.gif");
        sig=new JButton(iconSig);
        prev=new JButton(iconPrev);
        //Botones anterior y siguiente
        sig.setBounds(this.getWidth()-60,y,60,160);//posicion en pantalla
        prev.setBounds(5,y,60,160);
        sig.setBackground(Color.black);            //fondo negro
        prev.setBackground(Color.black);
        sig.addMouseListener(this);                //añadir evento
        prev.addMouseListener(this);

        add(canvas);
        add(sig);
        add(prev);
   }
   
   //dibuja la tira de botones de la parte superior---------------------------
   public void dibujarTira(){
       int x=this.x;
       for(int i=ini;i<=fin;i++){
            vecButton.setBounds(x,y,100,160);
            x+=130;
        }           
        for(int i=ini;i<=fin;i++){
               this.add(vecButton);
        }
    }
//-----------------------------------------------------------------------------
    public void quitarTira(){
        for(int i=ini;i<=fin;i++){
               this.remove(vecButton);
        }
    }
//-------------------------------------------------------------------------------
    public void mousePressed(MouseEvent evt){
        if(evt.getSource()==sig){
            if(fin<vecButton.length-1){
                quitarTira();
                ini++;
                fin++;
                repaint();
                dibujarTira();
            }
        }
        if(evt.getSource()==prev){
            if(ini>0){
                quitarTira();
                ini--;
                fin--;
                repaint();
                dibujarTira();
            }
        }

        if(evt.getSource()==vecButton[0]){
            canvas.image=getImage(getCodeBase(),vec[0]);
            canvas.repaint();
        }
        if(evt.getSource()==vecButton[1]){
            canvas.image=getImage(getCodeBase(),vec[1]);
            canvas.repaint();
        }
        if(evt.getSource()==vecButton[2]){
            canvas.image=getImage(getCodeBase(),vec[2]);
            canvas.repaint();
        }
        if(evt.getSource()==vecButton[3]){
            canvas.image=getImage(getCodeBase(),vec[3]);
            canvas.repaint();
        }
        if(evt.getSource()==vecButton[4]){
            canvas.image=getImage(getCodeBase(),vec[4]);
            canvas.repaint();
        }
        if(evt.getSource()==vecButton[5]){
            canvas.image=getImage(getCodeBase(),vec[5]);
            canvas.repaint();
        }
    }
    public void mouseClicked(MouseEvent evt){}
    public void mouseReleased(MouseEvent evt){}
//-------------------------------------------------------------------------------
    //EFECTO CRECER
    public void mouseEntered(MouseEvent evt){
        Rectangle rect;
        if(evt.getSource()==vecButton[0]){
            rect=vecButton[0].getBounds();
                rect.x-=20;
                rect.y-=20;
                rect.height+=40;
                rect.width+=40;
                vecButton[0].setBounds(rect);
        }
        if(evt.getSource()==vecButton[1]){
            rect=vecButton[1].getBounds();
                rect.x-=20;
                rect.y-=20;
                rect.height+=40;
                rect.width+=40;
                vecButton[1].setBounds(rect);
        }
        if(evt.getSource()==vecButton[2]){
            rect=vecButton[2].getBounds();
                rect.x-=20;
                rect.y-=20;
                rect.height+=40;
                rect.width+=40;
                vecButton[2].setBounds(rect);
        }
        if(evt.getSource()==vecButton[3]){
            rect=vecButton[3].getBounds();
                rect.x-=20;
                rect.y-=20;
                rect.height+=40;
                rect.width+=40;
                vecButton[3].setBounds(rect);
        }
        if(evt.getSource()==vecButton[4]){
            rect=vecButton[4].getBounds();
                rect.x-=20;
                rect.y-=20;
                rect.height+=40;
                rect.width+=40;
                vecButton[4].setBounds(rect);
        }
        if(evt.getSource()==vecButton[5]){
            rect=vecButton[5].getBounds();
                rect.x-=20;
                rect.y-=20;
                rect.height+=40;
                rect.width+=40;
                vecButton[5].setBounds(rect);
        }
    }//-------------------------------------------------------------------------
    //EFECTO DECRECER
    public void mouseExited(MouseEvent evt){
        Rectangle rect;
        if(evt.getSource()==vecButton[0]){
        rect=vecButton[0].getBounds();
                rect.x+=20;
                rect.y+=20;
                rect.height-=40;
                rect.width-=40;
                vecButton[0].setBounds(rect);
            }
            if(evt.getSource()==vecButton[1]){
        rect=vecButton[1].getBounds();
                rect.x+=20;
                rect.y+=20;
                rect.height-=40;
                rect.width-=40;
                vecButton[1].setBounds(rect);
            }
            if(evt.getSource()==vecButton[2]){
        rect=vecButton[2].getBounds();
                rect.x+=20;
                rect.y+=20;
                rect.height-=40;
                rect.width-=40;
                vecButton[2].setBounds(rect);
            }
            if(evt.getSource()==vecButton[3]){
        rect=vecButton[3].getBounds();
                rect.x+=20;
                rect.y+=20;
                rect.height-=40;
                rect.width-=40;
                vecButton[3].setBounds(rect);
            }
            if(evt.getSource()==vecButton[4]){
        rect=vecButton[4].getBounds();
                rect.x+=20;
                rect.y+=20;
                rect.height-=40;
                rect.width-=40;
                vecButton[4].setBounds(rect);
            }
            if(evt.getSource()==vecButton[5]){
        rect=vecButton[5].getBounds();
                rect.x+=20;
                rect.y+=20;
                rect.height-=40;
                rect.width-=40;
                vecButton[5].setBounds(rect);
            }
    }
}
//CLASE CANVAS
class ImageCanvas extends Canvas {
static Image image;
Dimension minSize;
int w, h;
    public ImageCanvas(
    int initialWidth, int initialHeight,Image image) {
        this.image = image;
        w = initialWidth;
        h = initialHeight;
    }
   
    public void paint (Graphics g) {
            g.drawRect(0, 0, w - 1, h - 1);
            g.drawImage(image, 0, 0, 500, 650, this);
        }
        public void destroy(){
       
        }
}
//fin del Codigo----------------------------------------------------------------------------


El Siguiente es el error que arroja la consola de JAva


java.security.AccessControlException: access denied (java.io.FilePermission Icon\1.jpg read)
   at java.security.AccessControlContext.checkPermission(Unknown Source)
   at java.security.AccessController.checkPermission(Unknown Source)
   at java.lang.SecurityManager.checkPermission(Unknown Source)
   at java.lang.SecurityManager.checkRead(Unknown Source)
   at sun.awt.SunToolkit.getImageFromHash(Unknown Source)
   at sun.awt.SunToolkit.getImage(Unknown Source)
   at javax.swing.ImageIcon.<init>(Unknown Source)
   at javax.swing.ImageIcon.<init>(Unknown Source)
   at Selection.init(Selection.java:54)
   at sun.applet.AppletPanel.run(Unknown Source)
   at java.lang.Thread.run(Unknown Source)



Espero Alguien Pueda Ayudarme
Se lo Agradecere
En línea
Sherekan
Moderador
Savant
*****

Prestigio: 8
Desconectado Desconectado

Sexo: Femenino
Mensajes: 30


Just Sherekan


WWW
Lenguajes:
PHP, Java, C/C++
XML, HTML/XHTML
Bases de datos:
MySQL
« Respuesta #1 en: 08/02/2008, 22:10:37 »

Hola!!

Te dejo el código de la policy file que tenés que usar:

Código
// Standard extensions get all permissions by default
 
grant codeBase "file:${{java.ext.dirs}}/*" {
permission java.security.AllPermission;
};
 
// default permissions granted to all domains
 
grant {
// Allows any thread to stop itself using the java.lang.Thread.stop()
// method that takes no argument.
// Note that this permission is granted by default only to remain
// backwards compatible.
// It is strongly recommended that you either remove this permission
// from this policy file or further restrict it to code sources
// that you specify, because Thread.stop() is potentially unsafe.
// See "http://java.sun.com/notes" for more information.
permission java.lang.RuntimePermission "stopThread";
 
// allows anyone to listen on un-privileged ports
permission java.net.SocketPermission "localhost:1024-", "listen";
 
// "standard" properies that can be read by anyone
 
permission java.util.PropertyPermission "java.version", "read";
permission java.util.PropertyPermission "java.vendor", "read";
permission java.util.PropertyPermission "java.vendor.url", "read";
permission java.util.PropertyPermission "java.class.version", "read";
permission java.util.PropertyPermission "os.name", "read";
permission java.util.PropertyPermission "os.version", "read";
permission java.util.PropertyPermission "os.arch", "read";
permission java.util.PropertyPermission "file.separator", "read";
permission java.util.PropertyPermission "path.separator", "read";
permission java.util.PropertyPermission "line.separator", "read";
 
permission java.util.PropertyPermission "java.specification.version", "read";
permission java.util.PropertyPermission "java.specification.vendor", "read";
permission java.util.PropertyPermission "java.specification.name", "read";
 
permission java.util.PropertyPermission "java.vm.specification.version", "read";
permission java.util.PropertyPermission "java.vm.specification.vendor", "read";
permission java.util.PropertyPermission "java.vm.specification.name", "read";
permission java.util.PropertyPermission "java.vm.version", "read";
permission java.util.PropertyPermission "java.vm.vendor", "read";
permission java.util.PropertyPermission "java.vm.name", "read";
};

El archivo que contiene la policy file es /lib/security/java.security dentro del directorio del JRE.

Saludos!
En línea
angel.caido.86
Sage
*****

Prestigio: -1
Desconectado Desconectado

Estudiante de: INFORMATICA
Mensajes: 14



Lenguajes:
INTENTO CON JAVA
« Respuesta #2 en: 15/02/2008, 22:12:21 »

Disculpa mi ignorancia     .... como lo uso... por que intente editar el archivo con el codigo y obtengo el mismo resultado

En línea
Sherekan
Moderador
Savant
*****

Prestigio: 8
Desconectado Desconectado

Sexo: Femenino
Mensajes: 30


Just Sherekan


WWW
Lenguajes:
PHP, Java, C/C++
XML, HTML/XHTML
Bases de datos:
MySQL
« Respuesta #3 en: 16/02/2008, 00:19:46 »

En realidad lo hiciste bien... te debería funcionar... :S

Fijate si las excepciones que te tira son las mismas que antes (para ver si cambió algo).

¿Localmente te funciona el applet?

Saludos.
« Última modificación: 16/02/2008, 00:35:18 por Sherekan » En línea
angel.caido.86
Sage
*****

Prestigio: -1
Desconectado Desconectado

Estudiante de: INFORMATICA
Mensajes: 14



Lenguajes:
INTENTO CON JAVA
« Respuesta #4 en: 19/02/2008, 19:01:38 »

el applet solo funciona en el appletviewer  ;   deja de funcionar cuando lo pongo en la pagina     Huh?

En línea
Sherekan
Moderador
Savant
*****

Prestigio: 8
Desconectado Desconectado

Sexo: Femenino
Mensajes: 30


Just Sherekan


WWW
Lenguajes:
PHP, Java, C/C++
XML, HTML/XHTML
Bases de datos:
MySQL
« Respuesta #5 en: 19/02/2008, 21:35:57 »

Intentá correr el applet de nuevo y decime las excepciones que te tira. Para ver si es lo mismo de antes que cambies la policy file.
En línea
Foros del Club
   

 En línea
Páginas: [1]   Ir Arriba
  Enviar tema  |  Imprimir  
 
Ir a: