Package org.glassfish.ejb.deployment.descriptor

Examples of org.glassfish.ejb.deployment.descriptor.FieldDescriptor


        String primkey =
      ((EjbEntityDescriptor)descriptor).getPrimaryKeyClassName();
                    if (primkey.equals("java.lang.String")) {
                        try {
 
                FieldDescriptor primField =
              ((EjbCMPEntityDescriptor)descriptor).getPrimaryKeyFieldDesc();
 
                // primField must exist in order to be valid & pass test
                Descriptor persistentField;
                Field field;
                Set persistentFields =
              ((EjbCMPEntityDescriptor)descriptor).getPersistenceDescriptor().getCMPFields();
                Iterator iterator = persistentFields.iterator();
                boolean foundMatch = false;
                while (iterator.hasNext()) {
              persistentField = (Descriptor)iterator.next();
              if (primField != null) {
                  if (primField.getName().equals(persistentField.getName())) {
                      foundMatch = true;
                      break;
                  } else {
                      continue;
                  }
                    } else {
                                    // should already be set, can't ever be in cmp
                                    // fields if primField doesn't exist
                  foundMatch = false;
                  break;
                    }
                }
                if (foundMatch) {
              result.addGoodDetails(smh.getLocalString
                  ("tests.componentNameConstructor",
                   "For [ {0} ]",
                   new Object[] {compName.toString()}));
        result.passed(smh.getLocalString
                      (getClass().getName() + ".passed",
                       "Primary key field [ {0} ] is defined within set of container managed fields for bean [ {1} ]",
                       new Object[] {primField.getName(),descriptor.getName()}));
                } else {
              if (primField != null) {
                  result.addErrorDetails(smh.getLocalString
                 ("tests.componentNameConstructor",
                  "For [ {0} ]",
                  new Object[] {compName.toString()}));
            result.failed(smh.getLocalString
                    (getClass().getName() + ".failed",
                     "Primary key field [ {0} ] is not defined within set of container managed fields for bean [ {1} ]",
                     new Object[] {primField.getName(),descriptor.getName()}));
              } else {
                                    // unless special case, where primary key class
                                    // is java.lang.Object, then test should be N/A
                                    // not failed
                                    try {
View Full Code Here


    boolean badField = false;

    Iterator itr = ((EjbCMPEntityDescriptor)descriptor).getPersistenceDescriptor().getCMPFields().iterator();
    while (itr.hasNext()) {
        FieldDescriptor nextPersistentField = (FieldDescriptor)itr.next();
        badField = false;
        boolean foundField = false;

        // ensure that the Java types assigned to the container-managed
        // fields are restricted to the following: Java primitive types,
        // Java serializable types, and references of enterprise beans'
        // remote or home interfaces.
        Class c1 = null;
        try {
      Class c = Class.forName(((EjbEntityDescriptor)descriptor).getEjbClassName(), false, getVerifierContext().getClassLoader());
      // start do while loop here....
      do {
          try {
        c1 = c;
        Field f = c.getDeclaredField(nextPersistentField.getName());
        foundField = true;
        Class fc = f.getType();
        if ((RmiIIOPUtils.isValidRmiIDLPrimitiveType(fc)) ||
            (descriptor.getRemoteClassName().equals(fc.getName())) ||
            (descriptor.getHomeClassName().equals(fc.getName())) ||
            (EjbUtils.isValidSerializableType(fc))||
            (fc.getName().equals(descriptor.getLocalClassName())) ||
            (fc.getName().equals(descriptor.getLocalHomeClassName()))) {
            continue;
        } else {
            if (!oneFailed) {
          oneFailed = true;
            }
            badField = true;
        }
       
        if (badField) {
            result.addErrorDetails(smh.getLocalString
                 ("tests.componentNameConstructor",
                  "For [ {0} ]",
                  new Object[] {compName.toString()}));
            result.failed(smh.getLocalString
              (getClass().getName() + ".failed",
               "Error: Field [ {0} ] defined within entity bean class [ {1} ] was assigned an invalid type.  Container managed field must be assigned in the entity bean class with Java types restricted to the following: Java primitive types, Java serializable types, and references of enterprise beans' remote or home interfaces.",
               new Object[] {nextPersistentField.getName(),((EjbEntityDescriptor)descriptor).getEjbClassName()}));
        }
          } catch (NoSuchFieldException e) {
        foundField = false;
         
                        } while (((c = c.getSuperclass()) != null) && (!foundField));

                        if (!foundField) {
                            if (!oneFailed) {
                                oneFailed = true;
                            }
          result.addErrorDetails(smh.getLocalString
               ("tests.componentNameConstructor",
                "For [ {0} ]",
                new Object[] {compName.toString()}));
          result.failed(smh.getLocalString
            (getClass().getName() + ".failedException1",
             "Error: [ {0} ] field not found within class [ {1} ]",
             new Object[] {nextPersistentField.getName(),((EjbEntityDescriptor)descriptor).getEjbClassName()}));
            }
        } catch (ClassNotFoundException e) {
      Verifier.debug(e);
      result.addErrorDetails(smh.getLocalString
                 ("tests.componentNameConstructor",
            "For [ {0} ]",
            new Object[] {compName.toString()}));
      result.failed(smh.getLocalString
              (getClass().getName() + ".failedException",
               "Error: [ {0} ] class not found.",
               new Object[] {((EjbEntityDescriptor)descriptor).getEjbClassName()}));
       

        if (!oneFailed) {
      result.addGoodDetails(smh.getLocalString
                ("tests.componentNameConstructor",
                 "For [ {0} ]",
                 new Object[] {compName.toString()}));
      result.passed(smh.getLocalString
              (getClass().getName() + ".passed",
               "This entity bean class [ {0} ] has assigned [ {1} ] container managed field with valid Java type.",
               new Object[] {c1.getName(),nextPersistentField.getName()}));
        }
                }
                if (oneFailed) {
                    result.setStatus(Result.FAILED);
                } else {
View Full Code Here

    ((EjbEntityDescriptor)descriptor).getPersistenceType();
      if (EjbEntityDescriptor.CONTAINER_PERSISTENCE.equals(persistence)) {
    // do we have  primekey that maps to single or multiple fields in entity        // bean class?  if primekey-field exist, then primekey maps to single
    // field in entity bean class and this test in notApplicable
    try {
                    FieldDescriptor fd = ((EjbCMPEntityDescriptor)descriptor).getPrimaryKeyFieldDesc();
                    if (fd != null) {
                        String pkf = fd.getName();
                        if (pkf.length() > 0) {
          // N/A case
          result.addNaDetails(smh.getLocalString
               ("tests.componentNameConstructor",
          "For [ {0} ]",
View Full Code Here

      for (Iterator itr =
         ((EjbCMPEntityDescriptor)descriptor).getPersistenceDescriptor().getCMPFields().iterator();
           itr.hasNext();) {

          FieldDescriptor nextPersistentField = (FieldDescriptor)itr.next();
          String fieldName = nextPersistentField.getName();
          Class c = Class.forName(descriptor.getEjbClassName(), false, getVerifierContext().getClassLoader());

                            // start do while loop here....
          do {
        // Returns an array containing Field objects
View Full Code Here

      if (EjbEntityDescriptor.CONTAINER_PERSISTENCE.equals(persistence)) {
    // do we have  primekey that maps to single or multiple fields in entity        // bean class?  if primekey-field exist, then primekey maps to single
    // field in entity bean class and this test in notApplicable
    try {
        FieldDescriptor fd = ((EjbCMPEntityDescriptor)descriptor).getPrimaryKeyFieldDesc();
                    if (fd != null) {
            String pkf = fd.getName();
            if (pkf.length() > 0) {
          // N/A case
          result.addNaDetails(smh.getLocalString
               ("tests.componentNameConstructor",
          "For [ {0} ]",
View Full Code Here

    ((EjbEntityDescriptor)descriptor).getPersistenceType();
      if (EjbEntityDescriptor.CONTAINER_PERSISTENCE.equals(persistence)) {
    // do we have  primekey that maps to single or multiple fields in entity        // bean class?  if primekey-field exist, then primekey maps to single
    // field in entity bean class and this test in notApplicable
    try {
                    FieldDescriptor fd = ((EjbCMPEntityDescriptor)descriptor).getPrimaryKeyFieldDesc();
                    if (fd != null) {
                        String pkf = fd.getName();
                        if (pkf.length() > 0) {
          // N/A case
          result.addNaDetails(smh.getLocalString
               ("tests.componentNameConstructor",
          "For [ {0} ]",
View Full Code Here

    boolean badField = false;
    for (Iterator itr =
       ((EjbCMPEntityDescriptor)descriptor).getPersistenceDescriptor().getCMPFields().iterator();
         itr.hasNext();) {
        FieldDescriptor nextPersistentField = (FieldDescriptor)itr.next();
        badField = false;
        boolean foundField = false;

        // fields must not be defined in the entity bean class as transient.
        Class c1 = null;
        try {
      Class c = Class.forName(((EjbEntityDescriptor)descriptor).getEjbClassName(), false, getVerifierContext().getClassLoader());
      // start do while loop here....
      do {
          try {
                                c1 = c;
        Field f = c.getDeclaredField(nextPersistentField.getName());

        foundField = true;
        int modifiers = f.getModifiers();
        if (!Modifier.isTransient(modifiers)) {
            continue;
        } else {
            if (!oneFailed) {
          oneFailed = true;
            }
            badField = true;
        }
       
        if (badField) {
            result.addErrorDetails(smh.getLocalString
                 ("tests.componentNameConstructor",
                  "For [ {0} ]",
                  new Object[] {compName.toString()}));
            result.failed(smh.getLocalString
              (getClass().getName() + ".failed",
               "Error: Field [ {0} ] defined within entity bean class [ {1} ] is defined as transient.  Container managed field must not be defined in the entity bean class as transient.",
               new Object[] {nextPersistentField.getName(),c.getName()}));
        }
          } catch (NoSuchFieldException e) {
        foundField = false;
         
      } while (((c = c.getSuperclass()) != null) && (!foundField));
      if (!foundField) {
          if (!oneFailed) {
        oneFailed = true;
          }
          result.addErrorDetails(smh.getLocalString
               ("tests.componentNameConstructor",
                "For [ {0} ]",
                new Object[] {compName.toString()}));
          result.failed(smh.getLocalString
            (getClass().getName() + ".failedException1",
             "Error: [ {0} ] field not found within class [ {1} ]",
             new Object[] {nextPersistentField.getName(),((EjbEntityDescriptor)descriptor).getEjbClassName()}));
      }

        } catch (ClassNotFoundException e) {
      Verifier.debug(e);
      if (!oneFailed) {
          oneFailed = true;
      }
      result.addErrorDetails(smh.getLocalString
                 ("tests.componentNameConstructor",
            "For [ {0} ]",
            new Object[] {compName.toString()}));
      result.failed(smh.getLocalString
              (getClass().getName() + ".failedException",
               "Error: [ {0} ] class not found.",
               new Object[] {((EjbEntityDescriptor)descriptor).getEjbClassName()}));
       
        if (!oneFailed) {
      result.addGoodDetails(smh.getLocalString
               ("tests.componentNameConstructor",
          "For [ {0} ]",
          new Object[] {compName.toString()}));
      result.passed(smh.getLocalString
              (getClass().getName() + ".passed",
               "This entity bean class [ {0} ] has defined [ {1} ] container managed field as non-transient field.",
               new Object[] {c1.getName(),nextPersistentField.getName()}));
        }
    }
                if (oneFailed) {
                    result.setStatus(Result.FAILED);
                } else {
View Full Code Here

    // do we have  primekey that maps to single or multiple fields in entity
    // bean class?  if primekey-field exist, then primekey maps to single
    // field in entity bean class and this test in notApplicable
    try {
                    FieldDescriptor fd = ((EjbCMPEntityDescriptor)descriptor).getPrimaryKeyFieldDesc();
                    if (fd != null) {
                        String pkf = fd.getName();
                        if (pkf.length() > 0) {
          // N/A case
          result.addNaDetails(smh.getLocalString
               ("tests.componentNameConstructor",
          "For [ {0} ]",
View Full Code Here

    ((EjbEntityDescriptor)descriptor).getPersistenceType();
      if (EjbEntityDescriptor.CONTAINER_PERSISTENCE.equals(persistence)) {
    // do we have  primekey that maps to single or multiple fields in entity        // bean class?  if primekey-field exist, then primekey maps to single
    // field in entity bean class and this test in notApplicable
    try {
        FieldDescriptor fd = ((EjbCMPEntityDescriptor)descriptor).getPrimaryKeyFieldDesc();
                    if (fd != null) {
                        String pkf = fd.getName();
                        if (pkf.length() > 0) {
          // N/A case
          result.addNaDetails(smh.getLocalString
               ("tests.componentNameConstructor",
          "For [ {0} ]",
View Full Code Here

                if( nextName.startsWith("get") &&
                    nextName.length() > 3 ) {
                    String field =
                        nextName.substring(3,4).toLowerCase() +
                        nextName.substring(4);
                    fieldDescriptors.add(new FieldDescriptor(field));
                }
            }
        }
        return fieldDescriptors;
    }
View Full Code Here

TOP

Related Classes of org.glassfish.ejb.deployment.descriptor.FieldDescriptor

Copyright © 2018 www.massapicom. All rights reserved.
All source code are property of their respective owners. Java is a trademark of Sun Microsystems, Inc and owned by ORACLE Inc. Contact coftware#gmail.com.