The Artima Developer Community
Sponsored Link

Legacy Jini Forum
Adding UIs to Jini Services

Advertisement

Advertisement

This page contains an archived post to the Jini Forum made prior to February 25, 2002. If you wish to participate in discussions, please visit the new Artima Forums.

Message:

same problem

Posted by Mirco Angeletti on January 18, 2002 at 2:21 PM

> > Hi,
> > I am also facing the same problem but it is running well when I create a frame and add the applet into the frame...and creating connection in the frame....
> > if you have found the solution tell me... i am also trying for that...

>
> > > hi sir...
> > > i have faced the a problem when i want to connect my applet with Ms SQL Server..
> > > the error:
> > > java.security.AccessControlException: access denied (java.lang.RuntimePermission accessClassInPackage.sun )
> > > it appears when i catch an exception...on the connection part
> > > Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
> > > so is there a specific connection to the database for the applets..?
> > > > > please i need help as soon as possible...so if anyone reach any solution for this problem, please reply me...
> > > > > thanks for cooperating


Hello!
I have the same problem with applet. When I create a frame and I try to connect with Access I receive the message:
java.security.AccessControlException: access denied.
(java.lang.RuntimePermission accessClassInPackage.sun.jdbc.odbc).....
For details I give you my applet. It save a results of an aritmetic operation in a dbase. It very simply but....

thank you very much!

import java.sql.*;
import java.awt.*;
import java.awt.event.*;
import javax.swing.*;

class CalculatorPanel extends JPanel
{
public CalculatorPanel()
{
setLayout(new BorderLayout());

result = 0;
lastCommand = "=";
start = true;

// add the display

display = new JTextField("0");
display.setEditable(false);
add(display, BorderLayout.NORTH);

ActionListener insert = new InsertAction();
ActionListener command = new CommandAction();

// add the buttons in a 4 x 4 grid

panel = new JPanel();
panel.setLayout(new GridLayout(4, 4));

addButton("7", insert);
addButton("8", insert);
addButton("9", insert);
addButton("/", command);

addButton("4", insert);
addButton("5", insert);
addButton("6", insert);
addButton("*", command);

addButton("1", insert);
addButton("2", insert);
addButton("3", insert);
addButton("-", command);

addButton("0", insert);
addButton(".", insert);
addButton("=", command);
addButton("+", command);

add(panel, BorderLayout.CENTER);
}

/**
Adds a button to the center panel.
@param label the button label
@param listener the button listener
*/
private void addButton(String label, ActionListener listener)
{
JButton button = new JButton(label);
button.addActionListener(listener);
panel.add(button);
}

/**
This action inserts the button action string to the
end of the display text.
*/
private class InsertAction implements ActionListener
{
public void actionPerformed(ActionEvent event)
{
String input = event.getActionCommand();
if (start)
{
display.setText("");
start = false;
}
display.setText(display.getText() + input);
}
}

/**
This action executes the command that the button
action string denotes.
*/
private class CommandAction implements ActionListener
{
public void actionPerformed(ActionEvent evt)
{
String command = evt.getActionCommand();

if (start)
{
if (command.equals("-"))
{
display.setText(command);
start = false;
}
else
lastCommand = command;
}
else
{
calculate(Double.parseDouble(display.getText()));
lastCommand = command;
start = true;
}
}
}

/**
Carries out the pending calculation.
@param x the value to be accumulated with the prior result.
*/
public void calculate(double x)
{
if (lastCommand.equals("+")) result += x;
else if (lastCommand.equals("-")) result -= x;
else if (lastCommand.equals("*")) result *= x;
else if (lastCommand.equals("/")) result /= x;
else if (lastCommand.equals("=")) result = x;
display.setText("" + result);
}

private JTextField display;
private JPanel panel;
private double result;
private String lastCommand;
private boolean start;
}


public class CalculatorApplet extends JApplet
{ Connection con = null;
public void init()
{
try {

/* Connessione al data base tramite il bridge driver jdbc-odbc per
Microsoft Access*/
System.out.println("Sono prima ");
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver").newInstance();
System.out.println("Sono dopo");
/* Mi pongo la domanda: "Dove si trova il mio DBASE?".
La risposta � DSNTEST ovvero quel collegamento
realizzato sul pannello di controllo e relativo al
dBase precedentemente creato con Access*/

String url = "jdbc:odbc:DSNTEST";
/* otteniamo ora una connessione vera e propria ma tramite
driver senza dover aprire Access */
//con = DriverManager.getConnection(url);
System.out.println("Connesione OK");
}
/* Qualchecosa potrebbe andare storta durante il
tentativo di connessione */

catch (Exception e) {
System.out.println("Connessione fallita");
e.printStackTrace();
System.exit(1);
}

Container contentPane = getContentPane();
CalculatorPanel panel = new CalculatorPanel();
contentPane.add(panel);
}
}




Replies:

Sponsored Links



Google
  Web Artima.com   
Copyright © 1996-2009 Artima, Inc. All Rights Reserved. - Privacy Policy - Terms of Use - Advertise with Us