Your Browser is not longer supported

Please use Google Chrome, Mozilla Firefox or Microsoft Edge to view the page correctly
Loading...

{{viewport.spaceProperty.prod}}

Verwendung der generierten Klassen

Auf der Grundlage der generierten Klassen können Anwendungen erstellt werden. Die nachfolgende Klasse zeigt das Beispiel eines BeanConnect-Clients, dem die Klasse EmployeeRecord zugrunde liegt.

package net.fsc.jca.beanconnect.qa;
import javax.ejb.SessionBean;
import javax.ejb.SessionContext;
import de.siemens.cob2java.cobtypes.*; // Runtime of Cobol2Java
import de.siemens.cob2java.test.EmployeeRecord
public class EmployeeServiceBean implements SessionBean 
{
  private net.fsc.jca.communication.EISConnectionFactory cf;
  public void ejbCreate() throws javax.ejb.CreateException
  {
     try {
         javax.naming.Context ic = new
         javax.naming.InitialContext();
         cf =(net.fsc.jca.communication.EISConnectionFactory)
              ic.lookup
         ("java:comp/env/eis/myEIS");
     } catch (javax.naming.NamingException ex) {
        throw new javax.ejb.CreateException
        ("NamingException:"+ex);
     }
}
public void ejbActivate()
{
}

public void ejbPassivate()
{
}

public void ejbRemove()
{
}

public void setSessionContext(SessionContext ctx)
{
}

public String addSalary(String employeeNr, int
                        salaryIncrease)
{
   String retValue = "";
   net.fsc.jca.communication.EISConnection con = null;
  try {            
     con = cf.getConnection();
     con.setServiceName("EMPLOYEE");
     // Create EmployeeRecord and accept the encoding setting
     // of the connection
     EmployeeRecord employee = new EmployeeRecord();
     try 
     {   employee.setEncoding( con.getEncoding() );  }
     catch (net.fsc.beanta.encoding.EncoderException encEx) {
     // todo  Error handling
     } // catch EncoderException
     employee.setEncodingActive( con.isEncodingActive() );
     // Fetch the required EmployeeData 
     employee.setEmployeeNumber( employeeNr );
     con.sndRecord( employee );
     con.rcvRecord( employee );
     // Increase the salary and send modification
     int oldSalary =employee.getSalaryInfo().
                    getAnnualSalary().intValue();
     employee.getSalaryInfo().setAnnualSalary( oldSalary+
                    salaryIncrease );            
     con.sndRecord( employee ); 
     con.rcvRecord( employee );
     retValue="Salary for "+employee.getLastName()+"
               increased from "+oldSalary +" to "+
               employee.getSalaryInfo().getAnnualSalary();
     con.close();
  } // try
  catch (net.fsc.jca.communication.EISConnectionException 
         eisEx) {
     if (con != null) {
        try {    con.close();
        } catch(Throwable thr) { }
     } 
     throw new javax.ejb.EJBException
                          ("EISConnectionException:"+eisEx);
  } // catch EISConnectionException
  catch (de.siemens.cob2java.cobtypes.
         Cob2JavaException cobEx) {
     if (con != null) {
        try {    con.close();
        } catch(Throwable thr) { } 
     } 
     throw new javax.ejb.EJBException("Cob2JavaException: 
                                      "+cobEx);
    } // catch Cob2JavaException
 	return retValue;
  } // addSalary
}