public java.lang.String getHPubXMLProperties(java.lang.String value) {
    if (tracing == true) {
      traceArgs[0] = this;
      traceArgs[1] = "OffenceCountTextPostData_Access.getHPubXMLProperties(String)";
      try {
        traceMethod.invoke(o, traceArgs);
      } catch (Exception x) {
      }
    }

    inputProps.setHPubStyleSheet(value);

    try {
      startHereCommon();
    } catch (BeanException e) {
      // remove the ejb instance if handle exists
      if (ejb != null) {
        try {
          ejb.remove();
        } catch (Exception x) {
        }
        ejb = null;
      }

      // go set error fields
      setupErrorFields(e);
    }
    if (outputProps != null) return outputProps.getHPubXMLData();
    else return null;
  }
 private void fixNullOutputsForSOAP(OffenceCountTextPostData_Properties fromClient) {
   // Transform null to "null"
   Class c = fromClient.getClass();
   java.beans.BeanInfo beanInfo = null;
   try {
     beanInfo = java.beans.Introspector.getBeanInfo(c);
   } catch (Exception e) {
   }
   java.beans.PropertyDescriptor[] properties = beanInfo.getPropertyDescriptors();
   for (int i = 0; i < properties.length; i++) {
     java.beans.PropertyDescriptor property = properties[i];
     java.lang.reflect.Method readMethod = property.getReadMethod();
     java.lang.reflect.Method writeMethod = property.getWriteMethod();
     if ((readMethod != null) && (writeMethod != null)) {
       String currentvalue = new String("");
       if (readMethod.getReturnType() == currentvalue.getClass()) {
         try {
           currentvalue = (String) (readMethod.invoke(fromClient, null));
         } catch (java.lang.reflect.InvocationTargetException a1) // Null argument
         {
           try {
             Object[] args1 = new Object[1];
             args1[0] = new String("null");
             writeMethod.invoke(fromClient, args1);
           } catch (Exception e2) {
           }
         } catch (Exception e1) {
         }
       } else {
       }
     }
   }
 }
 private void fixNullInputsForSOAP(OffenceCountTextPostData_Properties fromClient) {
   // Transform "null" to null
   // Set hPubStartPoolName and hPubLinkKey to null if string < 1
   Class c = fromClient.getClass();
   java.beans.BeanInfo beanInfo = null;
   try {
     beanInfo = java.beans.Introspector.getBeanInfo(c);
   } catch (Exception e) {
   }
   java.beans.PropertyDescriptor[] properties = beanInfo.getPropertyDescriptors();
   for (int i = 0; i < properties.length; i++) {
     java.beans.PropertyDescriptor property = properties[i];
     java.lang.reflect.Method readMethod = property.getReadMethod();
     java.lang.reflect.Method writeMethod = property.getWriteMethod();
     if ((readMethod != null) && (writeMethod != null)) {
       String currentvalue = new String("");
       if (readMethod.getReturnType() == currentvalue.getClass()) {
         try {
           currentvalue = (String) readMethod.invoke(fromClient, null);
         } catch (Exception e1) {
         }
         if (currentvalue != null) {
           if (currentvalue.equals("null")) {
             try {
               Object[] args1 = new Object[1];
               args1[0] = null;
               writeMethod.invoke(fromClient, args1);
             } catch (Exception e2) {
             }
           }
           if ((currentvalue.length() < 1 || currentvalue.endsWith("/null"))
               && (writeMethod.getName().indexOf("PubStartPoolName") > -1)) {
             try {
               Object[] args1 = new Object[1];
               args1[0] = "ICONEJB/null";
               writeMethod.invoke(fromClient, args1);
             } catch (Exception e2) {
             }
           }
           if ((currentvalue.length() < 1) && (writeMethod.getName().indexOf("PubLinkKey") > -1)) {
             try {
               Object[] args1 = new Object[1];
               args1[0] = null;
               writeMethod.invoke(fromClient, args1);
             } catch (Exception e2) {
             }
           }
         }
       } else {
       }
     }
   }
 }
  public OffenceCountTextPostData_Properties processWSRequest(
      OffenceCountTextPostData_Properties props) throws BeanException {

    if (tracing == true) {
      traceArgs[0] = this;
      traceArgs[1] =
          "OffenceCountTextPostData_Access.processWSRequest(OffenceCountTextPostData_Properties)";
      try {
        traceMethod.invoke(o, traceArgs);
      } catch (Exception x) {
      }
    }
    fixNullInputsForSOAP(props);

    inputProps = props;
    setHPubAccessHandleString(inputProps.getHPubAccessHandle());

    try {
      startHereCommon();
    } catch (BeanException e) {
      // remove the ejb instance if handle exists
      if (ejb != null) {
        try {
          ejb.remove();
        } catch (Exception x) {
        }
        ejb = null;
      }

      // go set error fields
      setupErrorFields(e);

      throw e;
    }
    outputProps.setHPubAccessHandle(getHPubAccessHandleString());
    fixNullOutputsForSOAP(outputProps);
    return outputProps;
  }
 protected void setupErrorFields(Exception oException) {
   // if hPubErrorOccurred not set by actual driving of Integration
   // Object, then set error fields in output Properties object
   // if it exists, otherwise set them in input Properties object.
   if (this.getHPubErrorOccurred() == 0) {
     if (outputProps != null) {
       outputProps.setHPubErrorOccurred(1);
       outputProps.setHPubErrorException(oException);
       if (oException.getMessage() != null)
         outputProps.setHPubErrorMessage(oException.getMessage());
     } else {
       inputProps.setHPubErrorOccurred(1);
       inputProps.setHPubErrorException(oException);
       if (oException.getMessage() != null)
         inputProps.setHPubErrorMessage(oException.getMessage());
     }
   }
 }
 public void setHPubStartPoolName(java.lang.String value) {
   inputProps.setHPubStartPoolName(value);
 }
 public void setCountText(java.lang.String value) {
   inputProps.setCountText(value);
 }
 public void setHPubLinkKey(java.lang.String value) {
   inputProps.setHPubLinkKey(value);
 }
 public void setHPubStartType(int value) {
   inputProps.setHPubStartType(value);
 }
 public void setQualifier(java.lang.String value) {
   inputProps.setQualifier(value);
 }
 public java.lang.String getHPubErrorMessage() {
   if (outputProps != null) return (outputProps.getHPubErrorMessage());
   else return (inputProps.getHPubErrorMessage());
 }
 public java.lang.String getQualifier() {
   if (outputProps != null) return (outputProps.getQualifier());
   else return (inputProps.getQualifier());
 }
 public java.lang.String getHPubXMLPropertiesWithoutInvoking() {
   if (outputProps != null) return (outputProps.getHPubXMLPropertiesWithoutInvoking());
   else return (inputProps.getHPubXMLPropertiesWithoutInvoking());
 }
 private void endHereCommon() throws BeanException {
   // save EJB object handle in property
   if (ejb != null) {
     try {
       hPubAccessHandle = ejb.getHandle();
     } catch (Exception e) {
       String errMsg =
           (new Date(System.currentTimeMillis())).toString()
               + " HPS5955 "
               + this.getClass().getName()
               + ": ejb.getHandle(), ejb="
               + ejb
               + ": "
               + e.getClass().getName()
               + ": "
               + e.getMessage();
       System.err.println(errMsg);
       if (tracing == true) {
         traceArgs[0] = this;
         traceArgs[1] = errMsg;
         try {
           traceMethod.invoke(o, traceArgs);
         } catch (Exception x) {
         }
       }
       throw new BeanException(errMsg);
     }
   }
   // save ejb accessHandle and hpubLinkKey in HttpSession
   if ((oHttpServletRequest != null) && (outputProps != null)) {
     // a new HPubEjb2HttpSessionBindingListener object containing the ejb access
     // handle and hPubLinkKey for the connection is bound to the session using
     // a prefix and the ending connection state of the IO just processed.
     // This hPubLinkKey uniquely identifies the connection associated with the
     // IO chain for that HP Runtime JVM.
     // The ejb access handle is contained within the HPubEjb2HttpSessionBindingListener
     // object so that an ejb remove can be issued in the case where a session
     // timeout or session invalidation occurs for an incomplete IO chain.
     HttpSession theWebsession = oHttpServletRequest.getSession(true);
     if (theWebsession != null) {
       synchronized (theWebsession) {
         try {
           String theKey = KEY_WEBCONN + outputProps.getHPubEndChainName();
           hPubLinkKey = outputProps.getHPubLinkKey();
           theWebsession.setAttribute(
               theKey, new HPubEJB2HttpSessionBindingListener(hPubAccessHandle, hPubLinkKey));
           if (tracing == true) {
             traceArgs[0] = this;
             traceArgs[1] =
                 "theWebsession.setAttribute("
                     + theKey
                     + ",new HPubEJB2HttpSessionBindingListener("
                     + hPubAccessHandle
                     + ", "
                     + hPubLinkKey
                     + "))";
             try {
               traceMethod.invoke(o, traceArgs);
             } catch (Exception x) {
             }
           }
           if (auditing == true) {
             auditArgs[0] =
                 "\n---\nIN:"
                     + this.getClass().getName()
                     + " "
                     + theKey
                     + " "
                     + hPubAccessHandle
                     + " "
                     + hPubLinkKey
                     + " "
                     + theWebsession.getId();
             auditArgs[1] = theWebsession;
             try {
               auditMethod.invoke(o, auditArgs);
             } catch (Exception x) {
             }
           }
         } catch (Exception e) {
           hPubLinkKey = null; // set to null to force following error logic
         }
       }
     }
     // if an error occurred throw an exception to cause ejb remove to be issued.
     if ((theWebsession == null) || (hPubLinkKey == null)) {
       String errMsg =
           (new Date(System.currentTimeMillis())).toString()
               + " HPS5956 "
               + this.getClass().getName()
               + ": HttpServletRequest.getSession(true), hPubLinkKey="
               + hPubLinkKey;
       System.err.println(errMsg);
       if (tracing == true) {
         traceArgs[0] = this;
         traceArgs[1] = errMsg;
         try {
           traceMethod.invoke(o, traceArgs);
         } catch (Exception x) {
         }
       }
       throw new BeanException(errMsg);
     }
   }
   // send Event to User indicating that the Query request is complete
   RequestCompleteEvent hPubEvent = new RequestCompleteEvent(this);
   fireHPubReqCompleteEvent(hPubEvent);
   return;
 }
 public java.lang.Exception getHPubErrorException() {
   if (outputProps != null) return (outputProps.getHPubErrorException());
   else return (inputProps.getHPubErrorException());
 }
 public java.lang.String getHPubBeanName() {
   if (outputProps != null) return (outputProps.getHPubBeanName());
   else return (inputProps.getHPubBeanName());
 }
 public int getHPubEndType() {
   if (outputProps != null) return (outputProps.getHPubEndType());
   else return (inputProps.getHPubEndType());
 }
 public java.lang.String getHPubLinkKey() {
   if (outputProps != null) return (outputProps.getHPubLinkKey());
   else return (inputProps.getHPubLinkKey());
 }
 public java.lang.String getCountText() {
   if (outputProps != null) return (outputProps.getCountText());
   else return (inputProps.getCountText());
 }
 public void setHPubEndType(int value) {
   inputProps.setHPubEndType(value);
 }
 public java.lang.String getHPubScreenState() {
   if (outputProps != null) return (outputProps.getHPubScreenState());
   else return (inputProps.getHPubScreenState());
 }
 public java.lang.String getHPubOutputParmSuffix() {
   if (outputProps != null) return (outputProps.getHPubOutputParmSuffix());
   else return (inputProps.getHPubOutputParmSuffix());
 }
 public void setHPubConnectionOverrides(java.lang.String value) {
   inputProps.setHPubConnectionOverrides(value);
 }
 public void setHPubMacroMessage(java.lang.String value) {
   inputProps.setHPubMacroMessage(value);
 }
 public java.lang.String getHPubConnectionOverrides() {
   if (outputProps != null) return (outputProps.getHPubConnectionOverrides());
   else return (inputProps.getHPubConnectionOverrides());
 }
  /** all processing methods end up here */
  private void startHereCommon() throws BeanException {
    // try to get the linkKey if already set in input properties
    try {
      hPubLinkKey = inputProps.getHPubLinkKey();
    } catch (Exception e) {
    }

    // if running in Web environment and either the ejb access handle or
    // the linkKey are null, try to get them from the HttpSession
    if (oHttpServletRequest != null) {
      HttpSession theWebsession = oHttpServletRequest.getSession(false);
      if (theWebsession != null) {
        synchronized (theWebsession) {
          try {
            if (tracing == true) {
              traceArgs[0] = this;
              traceArgs[1] = "HttpSession.getId()=" + theWebsession.getId();
              try {
                traceMethod.invoke(o, traceArgs);
              } catch (Exception x) {
              }
            }
            String theKey = KEY_WEBCONN + inputProps.getHPubStartChainName();
            // if linkKey or access handle is null try to get it from Websession
            HPubEJB2HttpSessionBindingListener sbl =
                (HPubEJB2HttpSessionBindingListener) theWebsession.getAttribute(theKey);
            if ((hPubLinkKey == null) && (sbl != null)) {
              hPubLinkKey = sbl.getLinkKey();
              if (tracing == true) {
                traceArgs[0] = this;
                traceArgs[1] = "HttpSession.getAttribute(hPubLinkKey)=" + hPubLinkKey;
                try {
                  traceMethod.invoke(o, traceArgs);
                } catch (Exception x) {
                }
              }
              inputProps.setHPubLinkKey(hPubLinkKey);
            }
            if ((hPubAccessHandle == null) && (sbl != null)) {
              hPubAccessHandle = sbl.getEjbHandle();
              if (tracing == true) {
                traceArgs[0] = this;
                traceArgs[1] = "HttpSession.getAttribute(hPubAccessHandle)=" + hPubAccessHandle;
                try {
                  traceMethod.invoke(o, traceArgs);
                } catch (Exception x) {
                }
              }
            }
            // set the ejb handle to null before removing the Session Binding
            // Listener object
            if (auditing == true) {
              if (sbl != null)
                auditArgs[0] =
                    "\n---\nOUT:"
                        + this.getClass().getName()
                        + " "
                        + theKey
                        + " "
                        + hPubAccessHandle
                        + " "
                        + hPubLinkKey
                        + " "
                        + theWebsession.getId();
              else // error - object not found in HttpSession
              auditArgs[0] =
                    "\n---\nERR:"
                        + this.getClass().getName()
                        + " "
                        + theKey
                        + " "
                        + theWebsession.getId();

              auditArgs[1] = theWebsession;
              try {
                auditMethod.invoke(o, auditArgs);
              } catch (Exception x) {
              }
            }
            if (sbl != null) sbl.setEjbHandle(null);
            theWebsession.removeAttribute(theKey);
          } catch (IllegalStateException e) {
          }
        }
      }
    }
    // if either of required properties are still null then the ejb cannot
    // be accessed - throw an exception.
    if ((hPubAccessHandle == null) || (hPubLinkKey == null)) {
      String errMsg =
          (new Date(System.currentTimeMillis())).toString()
              + " HPS5951 "
              + this.getClass().getName()
              + ": hPubAccessHandle==null || hPubLinkKey==null";
      System.err.println(errMsg);
      if (tracing == true) {
        traceArgs[0] = this;
        traceArgs[1] = errMsg;
        try {
          traceMethod.invoke(o, traceArgs);
        } catch (Exception x) {
        }
      }
      throw new BeanException(errMsg);
    } else {
      if (tracing == true) {
        traceArgs[0] = this;
        traceArgs[1] = "hPubAccessHandle=" + hPubAccessHandle + ",hPubLinkKey=" + hPubLinkKey;
        try {
          traceMethod.invoke(o, traceArgs);
        } catch (Exception x) {
        }
      }
    }

    // get the EJB object from the handle
    try {
      ejb =
          (com.ibm.HostPublisher.EJB.HPubEJB2)
              javax.rmi.PortableRemoteObject.narrow(
                  hPubAccessHandle.getEJBObject(), com.ibm.HostPublisher.EJB.HPubEJB2.class);
    } catch (Exception e) {
      String errMsg =
          (new Date(System.currentTimeMillis())).toString()
              + " HPS5952 "
              + this.getClass().getName()
              + ": getEJBObject(): "
              + e.getClass().getName()
              + ": "
              + e.getMessage();
      System.err.println(errMsg);
      if (tracing == true) {
        traceArgs[0] = this;
        traceArgs[1] = errMsg;
        try {
          traceMethod.invoke(o, traceArgs);
        } catch (Exception x) {
        }
      }
      throw new BeanException(errMsg);
    }
    // if ejb handle, go invoke the HPubEJB's main business method.
    if (ejb != null) {
      try {
        outputProps = (OffenceCountTextPostData_Properties) ejb.processIO(inputProps);
        inputProps = outputProps;
        inputProps.setInitialCall(false);
      } catch (Exception e) {
        String errMsg =
            (new Date(System.currentTimeMillis())).toString()
                + " HPS5953 "
                + this.getClass().getName()
                + ": processIO("
                + inputProps.getClass().getName()
                + "): "
                + e.getClass().getName()
                + ": "
                + e.getMessage();
        System.err.println(errMsg);
        if (tracing == true) {
          traceArgs[0] = this;
          traceArgs[1] = errMsg;
          try {
            traceMethod.invoke(o, traceArgs);
          } catch (Exception x) {
          }
        }
        throw new BeanException(errMsg);
      }
    }
    endHereCommon();
    return;
  }
 public void setHPubEndChainName(java.lang.String value) {
   inputProps.setHPubEndChainName(value);
 }
 public void setHPubScreenState(java.lang.String value) {
   inputProps.setHPubScreenState(value);
 }
 public int getHPubErrorOccurred() {
   if (outputProps != null) return (outputProps.getHPubErrorOccurred());
   else return (inputProps.getHPubErrorOccurred());
 }