1 Reply Latest reply on Sep 23, 2007 5:01 PM by alesj

    Serializable contract on deployer output

    starksm64

      A requirement that the AbstractParsingDeployerWithOutput.build(DeploymentUnit unit, Map<String, ManagedObject> managedObjects) imposes on the deployer output is that it must be Serialziable in order for the default ManagedObjectFactory to be usable. A change was made to only check the output type:


       // we can check for Serializable w/o searching for attachment
       if (Serializable.class.isAssignableFrom(getOutput()) == false)
       {
       log.debug("Skipping ManagedObject since T(" + getOutput() + ") is not Serializable");
       }
      


      this does not work for interfaces in general, even though the actual implementation may be Serializable as is the case for the BeanDeployer KernelDeployment output.

      Previously this was checking the actual output attachment instance for Serializable. We need to restore this check, or just attempt to create the object if the buildManagedObject property is true.