class PersonServant extends zahlungsverhalten._personImplBase { public String name; public String vorname; public double schulden; public PersonServant() { this.name=""; this.vorname=""; this.schulden=0.0; } public String name() { return this.name; } public void name(String name) { this.name=name; } public String vorname() { return this.vorname; } public void vorname(String vorname) { this.vorname=vorname; } public double schulden() { return this.schulden; } public void schulden(double schulden) { this.schulden=schulden; } }//end of class PersonServant class VerhaltenServant extends zahlungsverhalten._zahlungenImplBase { PersonServant pers=new PersonServant(); public person getperson(String name,String vorname) { try { int i=0; String strQuery="Select * From tabelle1 WHERE name='"+name+"'"+" AND vorname='"+vorname+"'"; VerhaltenConnection con=new VerhaltenConnection("tabelle1",strQuery); ResultSet rs=con.getResultSet(); if (! rs.wasNull()) { while (rs.next()) { pers.name(rs.getString(2)); pers.vorname(rs.getString(3)); pers.schulden(rs.getDouble(4)); i++; } } if (i==0) { pers.name(name); pers.vorname(vorname); pers.schulden(0.0); } } catch (SQLException e) { System.out.println("SQL-Fehler"+e.toString()); } return pers; } }//end of class VerhaltenServant public class server1 { public static void main(String args[]) { try{ // create and initialize the ORB org.omg.CORBA.ORB orb = org.omg.CORBA.ORB.init(args, null); // create servant and register it with the ORB VerhaltenServant Ref = new VerhaltenServant(); orb.connect(Ref); // get the root naming context org.omg.CORBA.Object objRef = orb.resolve_initial_references("NameService"); NamingContext ncRef = NamingContextHelper.narrow(objRef); // bind the Object Reference in Naming NameComponent nc = new NameComponent("Verhalten", ""); NameComponent path[] = {nc}; ncRef.rebind(path, Ref); System.out.println("SchuldenServer laueft"); // wait for invocations from clients java.lang.Object sync = new java.lang.Object(); synchronized (sync) { sync.wait(); } } catch (Exception e) { System.err.println("ERROR: " + e); e.printStackTrace(System.out); } } }//end of class server1 import zahlungsverhalten.*; import org.omg.CosNaming.*; import org.omg.CORBA.*; class client1 { person pers; public client1(String name,String vorname) { try{ // create and initialize the ORB String args1[]={"- ORBInitialHost","111.111.111.113","- ORBInitialPort","1050"}; ORB orb = ORB.init(args1, null); // get the root naming context org.omg.CORBA.Object objRef = orb.resolve_initial_references("NameService"); NamingContext ncRef = NamingContextHelper.narrow(objRef); // resolve the Object Reference in Naming NameComponent nc = new NameComponent("Verhalten", ""); NameComponent path[] = {nc}; zahlungen Ref = zahlungenHelper.narrow(ncRef.resolve(path)); // call the hello server object pers = Ref.getperson(name,vorname); } catch (Exception e) { System.out.println("ERROR : " + e) ; e.printStackTrace(System.out); } } }//end of class client1 import zahlungsverhalten.*; import kontostand.*; import org.omg.CosNaming.*; import org.omg.CORBA.*; import java.awt.*; import java.awt.event.*; import java.applet.*; public class client extends Applet implements WindowListener { Button button1=new Button("Schulden"); Button button2=new Button("Guthaben"); TextField tf1=new TextField(20); TextField tf2=new TextField(20); TextField tf3=new TextField(10); TextField tf4=new TextField(10); Panel panel1=new Panel(); Panel panel2=new Panel(); Panel panel3=new Panel(); Image im; BildCanvas imgCanvas; public void windowClosing(WindowEvent e) { System.exit(0); } //Rest der Window-Events nicht beachten public void windowOpened(WindowEvent e) {} public void windowIconified(WindowEvent e) {} public void windowDeiconified(WindowEvent e) {} public void windowClosed(WindowEvent e) {} public void windowActivated(WindowEvent e) {} public void windowDeactivated(WindowEvent e) {} public void init() { im=this.getImage(this.getDocumentBase(),"java.gif"); imgCanvas=new BildCanvas(im); // setBackground(Color.lightGray); this.setLayout(new GridLayout(3,1)); panel1.setLayout(new BorderLayout()); panel1.add("Center",imgCanvas); panel2.add(button1); panel2.add(button2); panel3.setLayout(new GridLayout(2,4,10,10)); panel3.add(new Label("Name :")); panel3.add(tf1); panel3.add(new Label("Vorname :")); panel3.add(tf2); panel3.add(new Label("Schulden:")); panel3.add(tf3); panel3.add(new Label("Guthaben:")); panel3.add(tf4); this.add(panel1); this.add(panel2); this.add(panel3); ButtonListener buttonHandler=new ButtonListener(this); button1.addActionListener(buttonHandler); button2.addActionListener(buttonHandler); } }//end of class client class BildCanvas extends Canvas { Image i,i2; public BildCanvas(Image i) { //Konstruktor this.i=i; } public void paint(Graphics g) { Graphics imgg; //Bild auf die GrӇe des Canvas skalieren g.drawImage(i,50,0,40,40,this); g.drawImage(i,350,0,50,50,this); Font f=new Font("Times New Roman",Font.BOLD,24); FontMetrics fm=getFontMetrics(f); g.setColor(Color.red); g.drawLine(10,10,400,10); g.setFont(f); g.drawString("Java",200,20); g.drawString("R. Tusche",400,60); f=new Font("Times New Roman",Font.BOLD,24); fm=getFontMetrics(f); g.setFont(f); g.setColor(Color.blue); g.drawString("CORBA - DEMO",100,40); g.setColor(Color.yellow); g.draw3DRect(300,20,30,20,true); } }//end of class BildCanvas import java.awt.event.*; import java.applet.*; public class ButtonListener implements ActionListener { client app; public ButtonListener(client app) { this.app=app; } public void actionPerformed(ActionEvent e) { if (e.getActionCommand().equals("Schulden")) { String name=app.tf1.getText(); String vorname=app.tf2.getText(); client1 cl=new client1(name,vorname); name=cl.pers.name(); vorname=cl.pers.vorname(); double schulden=cl.pers.schulden(); app.tf3.setText(""+schulden); } if (e.getActionCommand().equals("Guthaben")) { String name=app.tf1.getText(); String vorname=app.tf2.getText(); client2 cl2=new client2(name,vorname); name=cl2.pers1.name(); vorname=cl2.pers1.vorname(); double guthaben=cl2.pers1.guthaben(); app.tf4.setText(""+guthaben); } } }//end of class ButtonListener