Author: sshyrkov
Date: Tue Jun 26 20:09:09 2007
New Revision: 17787

URL: https://svndev.jahia.net/websvn/listing.php?sc=3D1&rev=3D17787&repname=
=3Djahia
Log:
SOUK-11: Workflow error causing 'missing' pages
http://www.jahia.net/jira/browse/SOUK-11
Resolved: prevent NPE

Modified:
    trunk/core/src/java/org/jahia/services/workflow/WorkflowService.java

Modified: trunk/core/src/java/org/jahia/services/workflow/WorkflowService.j=
ava
URL: https://svndev.jahia.net/websvn/diff.php?path=3D/trunk/core/src/java/o=
rg/jahia/services/workflow/WorkflowService.java&rev=3D17787&repname=3Djahia
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=3D=
=3D=3D=3D
--- trunk/core/src/java/org/jahia/services/workflow/WorkflowService.java (o=
riginal)
+++ trunk/core/src/java/org/jahia/services/workflow/WorkflowService.java Tu=
e Jun 26 20:09:09 2007
@@ -1225,22 +1225,24 @@
             ContentObjectKey contentObjectKey =3D (ContentObjectKey) itera=
tor.next();
             try {
                 ContentObject childContentObject =3D (ContentObject) Conte=
ntObject.getInstance(contentObjectKey);
-                if (!childContentObject.checkAdminAccess(jParams.getUser()=
)) {
-                    try {
-                        final EngineMessage msg =3D new EngineMessage(
-                                "org.jahia.services.workflow.WorkflowServi=
ce.noAdminRightsError");
-                        activationResults
-                                .appendError(new IsValidForActivationResul=
ts(
-                                        contentObjectKey.getType(),
-                                        Integer.parseInt(contentObjectKey.=
getIDInType()),
-                                        ContentField.SHARED_LANGUAGE, msg)=
);
-                        activationResults.setStatus(ActivationTestResults.=
PARTIAL_OPERATION_STATUS);
-                    } catch (ClassNotFoundException cnfe) {
-                        logger.debug ("Error while creating activation tes=
t node result",
-                                cnfe);
+                if (contentObject !=3D null && !contentObject.getStagingLa=
nguages(false,true).isEmpty()) {
+                    if (!childContentObject.checkAdminAccess(jParams.getUs=
er())) {
+                        try {
+                            final EngineMessage msg =3D new EngineMessage(
+                                    "org.jahia.services.workflow.WorkflowS=
ervice.noAdminRightsError");
+                            activationResults
+                                    .appendError(new IsValidForActivationR=
esults(
+                                            contentObjectKey.getType(),
+                                            Integer.parseInt(contentObject=
Key.getIDInType()),
+                                            ContentField.SHARED_LANGUAGE, =
msg));
+                            activationResults.setStatus(ActivationTestResu=
lts.PARTIAL_OPERATION_STATUS);
+                        } catch (ClassNotFoundException cnfe) {
+                            logger.debug ("Error while creating activation=
 test node result",
+                                    cnfe);
+                        }
+                    } else if ( !(childContentObject instanceof ContentFie=
ld) ) {
+                        activationResults.merge(childContentObject.activat=
eMetadatas(languageCodes, versioningActive, saveVersion, jParams.getUser(),=
 jParams, stateModifContext));
                     }
-                } else if ( !(childContentObject instanceof ContentField) =
) {
-                    activationResults.merge(childContentObject.activateMet=
adatas(languageCodes, versioningActive, saveVersion, jParams.getUser(), jPa=
rams, stateModifContext));
                 }
             } catch (ClassNotFoundException e) {
             }

_______________________________________________
cvs_list mailing list
[email protected]
http://lists.jahia.org/cgi-bin/mailman/listinfo/cvs_list

Reply via email to