whitlock    2002/06/27 03:44:49

  Modified:    java/src/org/apache/wsif/providers/ejb
                        WSIFDynamicProvider_EJB.java WSIFOperation_EJB.java
                        WSIFPort_EJB.java
               java/src/org/apache/wsif/logging Tr.java
  Log:
  Improve trace
  
  Revision  Changes    Path
  1.2       +2 -0      
xml-axis-wsif/java/src/org/apache/wsif/providers/ejb/WSIFDynamicProvider_EJB.java
  
  Index: WSIFDynamicProvider_EJB.java
  ===================================================================
  RCS file: 
/home/cvs/xml-axis-wsif/java/src/org/apache/wsif/providers/ejb/WSIFDynamicProvider_EJB.java,v
  retrieving revision 1.1
  retrieving revision 1.2
  diff -u -r1.1 -r1.2
  --- WSIFDynamicProvider_EJB.java      6 Jun 2002 08:28:51 -0000       1.1
  +++ WSIFDynamicProvider_EJB.java      27 Jun 2002 10:44:48 -0000      1.2
  @@ -134,6 +134,7 @@
               Tr.exit(bindings);
               return bindings;
           } catch (ClassNotFoundException e) {
  +             Tr.exception(e);
               Tr.exit(new String[0]);
               return new String[0];
           }
  @@ -154,6 +155,7 @@
               Tr.exit(addresses);
               return addresses;
           } catch (ClassNotFoundException e) {
  +             Tr.exception(e);
               Tr.exit(new String[0]);
               return new String[0];
           }
  
  
  
  1.6       +66 -13    
xml-axis-wsif/java/src/org/apache/wsif/providers/ejb/WSIFOperation_EJB.java
  
  Index: WSIFOperation_EJB.java
  ===================================================================
  RCS file: 
/home/cvs/xml-axis-wsif/java/src/org/apache/wsif/providers/ejb/WSIFOperation_EJB.java,v
  retrieving revision 1.5
  retrieving revision 1.6
  diff -u -r1.5 -r1.6
  --- WSIFOperation_EJB.java    25 Jun 2002 10:46:22 -0000      1.5
  +++ WSIFOperation_EJB.java    27 Jun 2002 10:44:48 -0000      1.6
  @@ -154,6 +154,7 @@
                       .get(
                       0);
           } catch (Exception e) {
  +             Tr.exception(e);
               throw new WSIFException(
                   "Unable to resolve EJB binding for operation '"
                       + bindingOperationModel.getName()
  @@ -198,8 +199,9 @@
           return woe;
       }
   
  -    protected static Class getClassForName(String classname)
  +    private static Class getClassForName(String classname)
           throws WSIFException {
  +        Tr.entry(null, classname);
           Class cls = null;
   
           if (classname == null) {
  @@ -240,20 +242,24 @@
                           Thread.currentThread().getContextClassLoader());
               }
           } catch (ClassNotFoundException ex) {
  +             Tr.exception(ex);
               throw new WSIFException(
                   "Could not instantiate class '" + classname + "'",
                   ex);
           }
   
  +        Tr.exit(cls);
           return cls;
       }
   
       protected Map getFaultMessageInfos() throws WSIFException {
  +        Tr.entry(this);
           // Get the current operation
           Operation operation = null;
           try {
               operation = getOperation();
           } catch (Exception e) {
  +             Tr.exception(e);
               throw new WSIFException("Failed to get Operation", e);
           }
   
  @@ -305,10 +311,12 @@
               }
           }
   
  +        Tr.exit(fieldFaultMessageInfos);
           return fieldFaultMessageInfos;
       }
   
       protected String getInputMessageName() throws WSIFException {
  +        Tr.entry(this);
           if (fieldInputMessageName == null) {
               BindingInput bindingInputModel =
                   fieldBindingOperationModel.getBindingInput();
  @@ -316,10 +324,12 @@
                   fieldInputMessageName = bindingInputModel.getName();
               }
           }
  +        Tr.exit(fieldInputMessageName);
           return fieldInputMessageName;
       }
   
       protected Method[] getMethods() throws WSIFException {
  +        Tr.entry(this);
           Method[] candidates;
           try {
               // Get the possible methods with the argument classes we've found.
  @@ -390,10 +400,13 @@
               for (int k = 0; k < candidates.length; k++) {
                   candidates[k] = (Method) possibles.get(k);
               }
  +            Tr.exit(candidates);
               return candidates;
           } catch (WSIFException ex) {
  +             Tr.exception(ex);
               throw ex;
           } catch (Exception ex) {
  +             Tr.exception(ex);
               throw new WSIFException(
                   "Error while resolving meta information of method "
                       + fieldEJBOperationModel.getMethodName()
  @@ -403,9 +416,12 @@
       }
   
       private void buildTypeMap() throws WSIFException {
  +        Tr.entry(this);
           // Only build once!
  -        if (fieldTypeMapBuilt)
  +        if (fieldTypeMapBuilt) {
  +             Tr.exit();
               return;
  +        }
   
           TypeMapping typeMapping = null;
   
  @@ -422,6 +438,7 @@
                   if (typeMapping.getEncoding().equals("Java"))
                       break;
               } catch (ClassCastException exn) {
  +                Tr.exception(exn);
               }
           }
   
  @@ -451,9 +468,11 @@
               }
           }
           fieldTypeMapBuilt = true;
  +        Tr.exit();
       }
   
       private Operation getOperation() throws Exception {
  +        Tr.entry(this);
           Operation operation = null;
           buildTypeMap();
   
  @@ -464,6 +483,7 @@
               inputName =
                   this.fieldBindingOperationModel.getBindingInput().getName();
           } catch (NullPointerException e) {
  +             Tr.exception(e);
               inputName = null;
           }
   
  @@ -472,22 +492,23 @@
               outputName =
                   this.fieldBindingOperationModel.getBindingOutput().getName();
           } catch (NullPointerException e) {
  +             Tr.exception(e);
               outputName = null;
           }
   
           // Build the parts list
           operation =
  -            this
  -                .fieldPortModel
  -                .getBinding()
  -                .getPortType()
  -                .getOperation(this.fieldBindingOperationModel.getName(),
  -            //this.fieldBindingOperationModel.getBindingInput().getName(),
  -    inputName, outputName);
  +            this.fieldPortModel.getBinding().getPortType().getOperation(
  +                this.fieldBindingOperationModel.getName(),
  +                inputName,
  +                outputName);
  +        //this.fieldBindingOperationModel.getBindingInput().getName(),
  +        Tr.exit(operation);
           return operation;
       }
   
       protected Object getMethodReturnClass() throws WSIFException {
  +        Tr.entry(this);
           Object methodReturnClass = null;
           try {
               String returnPartString = fieldEJBOperationModel.getReturnPart();
  @@ -520,7 +541,7 @@
                   } else {
                       // If we get here then the return part specified on the java 
operation was not
                       // in the output message
  -                    throw new Exception(
  +                    throw new WSIFException(
                           "returnPart '"
                               + returnPartString
                               + "' was not in the output message");
  @@ -528,6 +549,7 @@
               }
               // returnPart attribute was not present so return methodReturnClass as 
default null
           } catch (Exception ex) {
  +             Tr.exception(ex);
               throw new WSIFException(
                   "Error while determining return class of method "
                       + fieldEJBOperationModel.getMethodName()
  @@ -535,10 +557,12 @@
                   ex);
           }
   
  +        Tr.exit(methodReturnClass);
           return methodReturnClass;
       }
   
       protected Object[] getMethodArgumentClasses() throws WSIFException {
  +        Tr.entry(this);
           Object[] methodArgClasses = null;
           try {
   
  @@ -613,7 +637,7 @@
                               param);
                   }
                   if (part == null)
  -                    throw new Exception(
  +                    throw new WSIFException(
                           "Part '"
                               + param
                               + "' from parameterOrder not found in input or output 
message");
  @@ -677,6 +701,7 @@
                   }
               }
           } catch (Exception ex) {
  +             Tr.exception(ex);
               throw new WSIFException(
                   "Error while determining signature of method "
                       + fieldEJBOperationModel.getMethodName()
  @@ -684,6 +709,7 @@
                   ex);
           }
   
  +        Tr.exit(methodArgClasses);
           return methodArgClasses;
       }
   
  @@ -693,6 +719,7 @@
       protected Object[] getCompatibleArguments(
           Class[] parmTypes,
           Object[] args) {
  +        Tr.entry(this,parmTypes,args);
           // Go through each argument checking it's compatability with the method arg
           // creating a compatible set along the way.
           // In essence this just converts from String to Character when necessary
  @@ -700,6 +727,7 @@
           // on the object value, PUT THEM HERE :-)
           if (args == null || parmTypes == null) {
               Object[] compatibleArgs = new Object[0];
  +            Tr.exit(compatibleArgs);
               return compatibleArgs;
           }
   
  @@ -714,21 +742,27 @@
               Object convertedArg = getCompatibleObject(parmTypes[i], args[i]);
               if (convertedArg == null) {
                   // can't convert one of the arguments so return null
  +                Tr.exit(null);
                   return null;
               } else {
                   compatibleArgs[i] = convertedArg;
               }
   
           }
  +        Tr.exit(compatibleArgs);
           return compatibleArgs;
       }
   
       protected Object getCompatibleReturn(Method method, Object returnObj) {
  +        Tr.entry(this,method,returnObj);
  +        Object o = null;
           if (method.getReturnType().equals(java.lang.Character.class)) {
  -            return getCompatibleObject(java.lang.String.class, returnObj);
  +            o = getCompatibleObject(java.lang.String.class, returnObj);
           } else {
  -            return returnObj;
  +            o = returnObj;
           }
  +        Tr.exit(o);
  +        return o;
       }
   
       // Usually cls1.isAssignableFrom(cls2) returning false means you can't cast 
  @@ -741,22 +775,27 @@
       // Note: if you are adding other cases ensure you add both directions since the
       //       this conversion may be needed on method args AND returns
       protected Object getCompatibleObject(Class cls, Object obj) {
  +        Tr.entry(this,cls,obj);
           // String -> Character
           if (cls.equals(java.lang.Character.class)
               && obj.getClass().equals(java.lang.String.class)) {
               Character charArg = stringToCharacter((String) obj);
               if (charArg == null) {
                   // Can't convert this string to character so return null
  +                Tr.exit(null);
                   return null;
               }
  +            Tr.exit(charArg);
               return charArg;
           }
   
           if (cls.equals(java.lang.String.class)
               && obj.getClass().equals(java.lang.Character.class)) {
  +            Tr.exit(obj.toString());
               return (obj.toString());
           }
   
  +        Tr.exit(obj);
           return obj;
       }
   
  @@ -767,6 +806,7 @@
       }
   
       protected String getOutputMessageName() throws WSIFException {
  +        Tr.entry(this);
           if (fieldOutputMessageName == null) {
               BindingOutput bindingOutputModel =
                   fieldBindingOperationModel.getBindingOutput();
  @@ -774,6 +814,7 @@
                   fieldOutputMessageName = bindingOutputModel.getName();
               }
           }
  +        Tr.exit(fieldOutputMessageName);
           return fieldOutputMessageName;
       }
   
  @@ -812,6 +853,7 @@
                           arguments[i] = part;
                           foundInputParameter = true;
                       } catch (WSIFException e) {
  +                     Tr.exception(e);
                           if (fieldOutParameterNames.length > 0) {
                               String outParameterName = null;
                               for (int j = 0;
  @@ -865,6 +907,7 @@
                           invokedOK = true;
                           break;
                       } catch (IllegalArgumentException ia) {
  +                        Tr.exception(ia);
                           // Ingore and try next method
                       }
                       // Side effect: Initialize port's object reference 
  @@ -936,6 +979,7 @@
                                                   }
                                               }
                                           } catch (WSIFException e) {
  +                                             Tr.exception(e);
                                               //ignore
                                           }
                                       }
  @@ -944,6 +988,7 @@
                           }
                           break;
                       } catch (IllegalArgumentException ia) {
  +                             Tr.exception(ia);
                           // Ingore and try next method
                       }
                   }
  @@ -954,6 +999,7 @@
                           + fieldEJBOperationModel.getMethodName()
                           + "'");
           } catch (InvocationTargetException ex) {
  +             Tr.exception(ex);
               Throwable invocationFault = ex.getTargetException();
               String className = invocationFault.getClass().getName();
               Map faultMessageInfos = getFaultMessageInfos();
  @@ -993,6 +1039,7 @@
                               operationSucceeded = false;
                           }
                       } catch (Exception exc) {
  +                     Tr.exception(exc);
                           // Nothing to do - just try the next one...
                       }
                   }
  @@ -1017,6 +1064,7 @@
               }
   
           } catch (Exception ex) {
  +             Tr.exception(ex);
               // Log message
               MessageLogger messageLog =
                   MessageLogger.newMessageLogger(
  @@ -1071,6 +1119,7 @@
                           arguments[i] = part;
                           foundInputParameter = true;
                       } catch (WSIFException e) {
  +                     Tr.exception(e);
                       }
   
                       if (!foundInputParameter) {
  @@ -1108,6 +1157,7 @@
                           invokedOK = true;
                           break;
                       } catch (IllegalArgumentException ia) {
  +                             Tr.exception(ia);
                           // Ingore and try next method
                       }
                       // Side effect: Initialize port's object reference 
  @@ -1130,6 +1180,7 @@
                           invokedOK = true;
                           break;
                       } catch (IllegalArgumentException ia) {
  +                             Tr.exception(ia);
                           // Ingore and try next method
                       }
                   }
  @@ -1140,6 +1191,7 @@
                           + fieldEJBOperationModel.getMethodName()
                           + "'");
           } catch (InvocationTargetException ex) {
  +             Tr.exception(ex);
               // Log message
               MessageLogger messageLog =
                   MessageLogger.newMessageLogger(
  @@ -1159,6 +1211,7 @@
                       + "' failed.",
                   ex);
           } catch (Exception ex) {
  +             Tr.exception(ex);
               // Log message
               MessageLogger messageLog =
                   MessageLogger.newMessageLogger(
  
  
  
  1.4       +4 -0      
xml-axis-wsif/java/src/org/apache/wsif/providers/ejb/WSIFPort_EJB.java
  
  Index: WSIFPort_EJB.java
  ===================================================================
  RCS file: 
/home/cvs/xml-axis-wsif/java/src/org/apache/wsif/providers/ejb/WSIFPort_EJB.java,v
  retrieving revision 1.3
  retrieving revision 1.4
  diff -u -r1.3 -r1.4
  --- WSIFPort_EJB.java 19 Jun 2002 15:33:40 -0000      1.3
  +++ WSIFPort_EJB.java 27 Jun 2002 10:44:48 -0000      1.4
  @@ -179,6 +179,7 @@
                       initContext = new InitialContext(hash);
                       fieldEjbHome = (EJBHome) 
initContext.lookup(address.getJndiName());
                   } catch (NoInitialContextException e) {
  +                     Tr.exception(e);
                       // Attempt to use Websphere default settings
                       try {
                           Class testClass =
  @@ -194,6 +195,7 @@
                           initContext = new InitialContext(hash);
                           fieldEjbHome = (EJBHome) 
initContext.lookup(address.getJndiName());
                       } catch (Exception ex) {
  +                             Tr.exception(ex);
                           // throw the original exception
                           throw e;
                       }
  @@ -201,6 +203,7 @@
   
                   //fieldEjbHome = (EJBHome) 
initContext.lookup(address.getJndiName());
               } catch (Exception ex) {
  +             Tr.exception(ex);
                   throw new WSIFException(
                       "Could not find EJB home '" + address.getJndiName() + "'",
                       ex);
  @@ -219,6 +222,7 @@
                   Method createMethod = 
ejbHome.getClass().getDeclaredMethod("create", null);
                   fieldEjbObject = (EJBObject) createMethod.invoke(ejbHome, null);
               } catch (Exception ex) {
  +             Tr.exception(ex);
                   throw new WSIFException(
                       "Could not create instance for home '" + ejbHome + "'",
                       ex);
  
  
  
  1.3       +10 -0     xml-axis-wsif/java/src/org/apache/wsif/logging/Tr.java
  
  Index: Tr.java
  ===================================================================
  RCS file: /home/cvs/xml-axis-wsif/java/src/org/apache/wsif/logging/Tr.java,v
  retrieving revision 1.2
  retrieving revision 1.3
  diff -u -r1.2 -r1.3
  --- Tr.java   18 Jun 2002 13:58:26 -0000      1.2
  +++ Tr.java   27 Jun 2002 10:44:49 -0000      1.3
  @@ -339,6 +339,16 @@
           }
       }
   
  +    public static void exception(Exception exception) {
  +        try {
  +            if (!ON)
  +                return;
  +            Tr.exception(0,exception);
  +        } catch (Exception e) {
  +            exceptionInTrace(e);
  +        }
  +    }
  +
       public static void exception(long type, Exception exception) {
           try {
               if (!ON)
  
  
  


Reply via email to