NonStop Server for Java (NSJ) Programmer's Guide (NSJ 2.0+)
String firstName[] = {Anne, Mike, Steve, Frank};
String lastName[] = {Smith, Jones, Brown, Green};
String middleInitial[] = {A, B, C, D};
String regnum[] = {01, 01, 02, 03};
String branchnum [] = {00, 01, 00, 01};
String request_code = new String(02);
Current tx = new Current();
// Create a TsmpServer object supplying the pathmon name and
// the serverclass name.
TsmpServer myserver = new TsmpServer(pmonName,svrClassName);
TsmpGenericServerReply greply = new TsmpGenericServerReply();
RQEmployee_add empAdd = new RQEmployee_add();
for(int i = 0; i < 4; i++) {
empAdd.setRequest_code(request_code);
empAdd.setEmployee_number(employeeNum[i]);
empAdd.setFirst(firstName[i]);
empAdd.setMiddle(middleInitial[i]);
empAdd.setLast(lastName[i]);
empAdd.setRegnum(regnum[i]);
empAdd.setBranchnum(branchnum[i]);
// Send the request to the server
try {
// Begin a transaction
tx.begin();
myserver.service(empAdd, greply);
} catch (TsmpServerException e) {
System.out.println(e.getMessage());
try {
// rollback because of errors
tx.rollback();
} catch (FSException er) {}
System.exit(1);
} catch (FSException fs) {
System.out.println(fs.getMessage());
try {
// rollback
tx.rollback();
} catch (FSException er2) {}
System.exit(1);
}
try {
if(greply.getString(0, 2).equals(02)) {
RPEmployee_reply empReply = new RPEmployee_reply(greply);
System.out.println(Employee added successfully);
tx.commit(true);
} else if(greply.getString(0, 2).equals(00)) {
RPError_reply errReply = new RPError_reply(greply);
System.out.println(errReply.getError_text());
tx.rollback();
System.exit(1);
} else {
System.out.println(Invalid reply code returned: \
> + greply.getString(0,1));