Return-Path: X-Original-To: apmail-pdfbox-commits-archive@www.apache.org Delivered-To: apmail-pdfbox-commits-archive@www.apache.org Received: from mail.apache.org (hermes.apache.org [140.211.11.3]) by minotaur.apache.org (Postfix) with SMTP id EEB6C10A68 for ; Sun, 1 Feb 2015 19:07:22 +0000 (UTC) Received: (qmail 34106 invoked by uid 500); 1 Feb 2015 19:07:23 -0000 Delivered-To: apmail-pdfbox-commits-archive@pdfbox.apache.org Received: (qmail 34081 invoked by uid 500); 1 Feb 2015 19:07:23 -0000 Mailing-List: contact commits-help@pdfbox.apache.org; run by ezmlm Precedence: bulk List-Help: List-Unsubscribe: List-Post: List-Id: Reply-To: dev@pdfbox.apache.org Delivered-To: mailing list commits@pdfbox.apache.org Received: (qmail 34071 invoked by uid 99); 1 Feb 2015 19:07:23 -0000 Received: from eris.apache.org (HELO hades.apache.org) (140.211.11.105) by apache.org (qpsmtpd/0.29) with ESMTP; Sun, 01 Feb 2015 19:07:23 +0000 Received: from hades.apache.org (localhost [127.0.0.1]) by hades.apache.org (ASF Mail Server at hades.apache.org) with ESMTP id 8885EAC0043; Sun, 1 Feb 2015 19:07:23 +0000 (UTC) Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Subject: svn commit: r1656347 - in /pdfbox/trunk/preflight/src: main/java/org/apache/pdfbox/preflight/ main/java/org/apache/pdfbox/preflight/action/ main/java/org/apache/pdfbox/preflight/process/ main/java/org/apache/pdfbox/preflight/process/reflect/ test/java/... Date: Sun, 01 Feb 2015 19:07:23 -0000 To: commits@pdfbox.apache.org From: tilman@apache.org X-Mailer: svnmailer-1.0.9 Message-Id: <20150201190723.8885EAC0043@hades.apache.org> Author: tilman Date: Sun Feb 1 19:07:22 2015 New Revision: 1656347 URL: http://svn.apache.org/r1656347 Log: PDFBOX-2652: validate Destination as separate process, except in GoToRemoteAction Added: pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/reflect/DestinationValidationProcess.java (with props) Modified: pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/PreflightConfiguration.java pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/action/AbstractActionManager.java pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/action/GoToAction.java pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/action/GoToRemoteAction.java pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/BookmarkValidationProcess.java pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/reflect/ActionsValidationProcess.java pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/reflect/AnnotationValidationProcess.java pdfbox/trunk/preflight/src/test/java/org/apache/pdfbox/preflight/action/pdfa1b/TestGotoAction.java Modified: pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/PreflightConfiguration.java URL: http://svn.apache.org/viewvc/pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/PreflightConfiguration.java?rev=1656347&r1=1656346&r2=1656347&view=diff ============================================================================== --- pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/PreflightConfiguration.java (original) +++ pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/PreflightConfiguration.java Sun Feb 1 19:07:22 2015 @@ -44,6 +44,7 @@ import org.apache.pdfbox.preflight.proce import org.apache.pdfbox.preflight.process.XRefValidationProcess; import org.apache.pdfbox.preflight.process.reflect.ActionsValidationProcess; import org.apache.pdfbox.preflight.process.reflect.AnnotationValidationProcess; +import org.apache.pdfbox.preflight.process.reflect.DestinationValidationProcess; import org.apache.pdfbox.preflight.process.reflect.ExtGStateValidationProcess; import org.apache.pdfbox.preflight.process.reflect.FontValidationProcess; import org.apache.pdfbox.preflight.process.reflect.GraphicObjectPageValidationProcess; @@ -76,6 +77,7 @@ public class PreflightConfiguration public static final String EXTGSTATE_PROCESS = "extgstate-process"; public static final String SHADDING_PATTERN_PROCESS = "shadding-pattern-process"; public static final String TILING_PATTERN_PROCESS = "tiling-pattern-process"; + public static final String DESTINATION_PROCESS = "destination-process"; /* * TODO other configuration option should be possible : - skip some validation process ? - ??? @@ -135,6 +137,7 @@ public class PreflightConfiguration configuration.replacePageProcess(FONT_PROCESS, FontValidationProcess.class); configuration.replacePageProcess(ACTIONS_PROCESS, ActionsValidationProcess.class); configuration.replacePageProcess(ANNOTATIONS_PROCESS, AnnotationValidationProcess.class); + configuration.replacePageProcess(DESTINATION_PROCESS, DestinationValidationProcess.class); configuration.actionFact = new ActionManagerFactory(); configuration.annotFact = new PDFAbAnnotationFactory(); Modified: pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/action/AbstractActionManager.java URL: http://svn.apache.org/viewvc/pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/action/AbstractActionManager.java?rev=1656347&r1=1656346&r2=1656347&view=diff ============================================================================== --- pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/action/AbstractActionManager.java (original) +++ pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/action/AbstractActionManager.java Sun Feb 1 19:07:22 2015 @@ -113,7 +113,7 @@ public abstract class AbstractActionMana } /** - * Call the {@link AbstractActionManager#valid(boolean)} method with the additonalActionAuth set to false. + * Call the {@link AbstractActionManager#valid(boolean)} method with the additionalActionAuth set to false. * * @return the validation state. * @throws ValidationException @@ -161,5 +161,5 @@ public abstract class AbstractActionMana * * @return True if the action is valid, false otherwise. */ - protected abstract boolean innerValid(); + protected abstract boolean innerValid() throws ValidationException; } Modified: pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/action/GoToAction.java URL: http://svn.apache.org/viewvc/pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/action/GoToAction.java?rev=1656347&r1=1656346&r2=1656347&view=diff ============================================================================== --- pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/action/GoToAction.java (original) +++ pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/action/GoToAction.java Sun Feb 1 19:07:22 2015 @@ -21,22 +21,18 @@ package org.apache.pdfbox.preflight.action; -import java.io.IOException; -import static org.apache.pdfbox.preflight.PreflightConstants.ERROR_ACTION_INVALID_TYPE; import static org.apache.pdfbox.preflight.PreflightConstants.ERROR_ACTION_MISING_KEY; -import org.apache.pdfbox.cos.COSArray; import org.apache.pdfbox.cos.COSBase; import org.apache.pdfbox.cos.COSDictionary; -import org.apache.pdfbox.cos.COSDocument; import org.apache.pdfbox.cos.COSName; -import org.apache.pdfbox.cos.COSObject; -import org.apache.pdfbox.pdmodel.interactive.documentnavigation.destination.PDDestination; +import static org.apache.pdfbox.preflight.PreflightConfiguration.DESTINATION_PROCESS; import org.apache.pdfbox.preflight.PreflightContext; import org.apache.pdfbox.preflight.ValidationResult.ValidationError; -import org.apache.pdfbox.preflight.utils.COSUtils; +import org.apache.pdfbox.preflight.exception.ValidationException; +import org.apache.pdfbox.preflight.utils.ContextHelper; /** - * ActionManager for the GoTo action GoToAction is valid if the D entry is present. + * ActionManager for the GoTo action. GoToAction is valid if the D entry is present. */ public class GoToAction extends AbstractActionManager { @@ -56,72 +52,22 @@ public class GoToAction extends Abstract /* * (non-Javadoc) * - * @see net.awl.edoc.pdfa.validation.actions.AbstractActionManager#valid(java.util .List) + * @see AbstractActionManager#valid(java.util.List) */ @Override - protected boolean innerValid() + protected boolean innerValid() throws ValidationException { - COSBase d = this.actionDictionnary.getItem(COSName.D); + COSBase dest = this.actionDictionnary.getItem(COSName.D); // ---- D entry is mandatory - if (d == null) + if (dest == null) { context.addValidationError(new ValidationError(ERROR_ACTION_MISING_KEY, "D entry is mandatory for the GoToActions")); return false; } - - COSDocument cosDocument = this.context.getDocument().getDocument(); - if (!(d instanceof COSName || COSUtils.isString(d, cosDocument) || COSUtils.isArray(d, cosDocument))) - { - context.addValidationError(new ValidationError(ERROR_ACTION_INVALID_TYPE, "Type of D entry is invalid")); - return false; - } - - if (d instanceof COSArray) - { - COSArray ar = (COSArray) d; - if (ar.size() < 2) - { - context.addValidationError(new ValidationError(ERROR_ACTION_INVALID_TYPE, - "/D entry of type array must have at least 2 elements")); - return false; - } - if (!validateExplicitDestination(ar)) - { - return false; - } - } - + ContextHelper.validateElement(context, dest, DESTINATION_PROCESS); return true; } - protected boolean validateExplicitDestination(COSArray ar) - { - // "In each case, page is an indirect reference to a page object." - if (ar.get(0) instanceof COSObject) - { - COSObject ob = (COSObject) ar.get(0); - COSBase type = ob.getDictionaryObject(COSName.TYPE); - if (COSName.PAGE.equals(type)) - { - try - { - PDDestination.create(ar); - } - catch (IOException e) - { - context.addValidationError(new ValidationError(ERROR_ACTION_INVALID_TYPE, - e.getMessage(), e)); - return false; - } - return true; - } - } - context.addValidationError(new ValidationError(ERROR_ACTION_INVALID_TYPE, - "First element in /D array entry of GoToAction must be an indirect reference to a dictionary of /Type /Page, but is " - + ar.getName(0))); - return false; - } - } Modified: pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/action/GoToRemoteAction.java URL: http://svn.apache.org/viewvc/pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/action/GoToRemoteAction.java?rev=1656347&r1=1656346&r2=1656347&view=diff ============================================================================== --- pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/action/GoToRemoteAction.java (original) +++ pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/action/GoToRemoteAction.java Sun Feb 1 19:07:22 2015 @@ -21,18 +21,26 @@ package org.apache.pdfbox.preflight.action; +import java.io.IOException; import org.apache.pdfbox.cos.COSArray; import org.apache.pdfbox.cos.COSBase; import org.apache.pdfbox.cos.COSDictionary; +import org.apache.pdfbox.cos.COSDocument; import org.apache.pdfbox.cos.COSName; import org.apache.pdfbox.cos.COSNumber; +import org.apache.pdfbox.pdmodel.interactive.documentnavigation.destination.PDDestination; +import org.apache.pdfbox.preflight.PreflightConstants; import static org.apache.pdfbox.preflight.PreflightConstants.ERROR_ACTION_INVALID_TYPE; import static org.apache.pdfbox.preflight.PreflightConstants.ERROR_ACTION_MISING_KEY; +import static org.apache.pdfbox.preflight.PreflightConstants.ERROR_SYNTAX_DICT_INVALID; import org.apache.pdfbox.preflight.PreflightContext; +import org.apache.pdfbox.preflight.ValidationResult; import org.apache.pdfbox.preflight.ValidationResult.ValidationError; +import org.apache.pdfbox.preflight.exception.ValidationException; +import org.apache.pdfbox.preflight.utils.COSUtils; /** - * ActionManager for the GoToRemote action GoToRemoteAction is valid if the F entry is present. + * ActionManager for the GoToRemote action. GoToRemoteAction is valid if the F entry is present. */ public class GoToRemoteAction extends GoToAction { @@ -55,23 +63,60 @@ public class GoToRemoteAction extends Go * @see AbstractActionManager#valid(java.util.List) */ @Override - protected boolean innerValid() + protected boolean innerValid() throws ValidationException { - if (super.innerValid()) + COSBase dest = this.actionDictionnary.getItem(COSName.D); + + // ---- D entry is mandatory + if (dest == null) + { + context.addValidationError(new ValidationError(ERROR_ACTION_MISING_KEY, + "/D entry is mandatory for the GoToActions")); + return false; + } + + COSDocument cosDocument = this.context.getDocument().getDocument(); + if (!(dest instanceof COSName || COSUtils.isString(dest, cosDocument) || COSUtils.isArray(dest, cosDocument))) { - COSBase f = this.actionDictionnary.getItem(COSName.F); - if (f == null) + context.addValidationError(new ValidationError(ERROR_ACTION_INVALID_TYPE, + "Type " + dest.getClass().getSimpleName() + " of /D entry is invalid")); + return false; + } + + COSBase f = this.actionDictionnary.getItem(COSName.F); + if (f == null) + { + context.addValidationError(new ValidationError(ERROR_ACTION_MISING_KEY, + "/F entry is mandatory for the GoToRemoteActions")); + return false; + } + + if (dest instanceof COSArray) + { + COSArray ar = (COSArray) dest; + if (ar.size() < 2) { - context.addValidationError(new ValidationError(ERROR_ACTION_MISING_KEY, - "F entry is mandatory for the GoToRemoteActions")); + context.addValidationError(new ValidationResult.ValidationError(ERROR_SYNTAX_DICT_INVALID, + "Destination array must have at least 2 elements")); return false; } + validateExplicitDestination(ar); + } + try + { + PDDestination.create(dest); + } + catch (IOException e) + { + context.addValidationError(new ValidationResult.ValidationError(PreflightConstants.ERROR_SYNTAX_DICT_INVALID, + e.getMessage(), e)); + return false; } + return true; } - - @Override - protected boolean validateExplicitDestination(COSArray ar) + + private boolean validateExplicitDestination(COSArray ar) { if (!(ar.get(0) instanceof COSNumber)) { @@ -83,5 +128,5 @@ public class GoToRemoteAction extends Go } return true; } - + } Modified: pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/BookmarkValidationProcess.java URL: http://svn.apache.org/viewvc/pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/BookmarkValidationProcess.java?rev=1656347&r1=1656346&r2=1656347&view=diff ============================================================================== --- pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/BookmarkValidationProcess.java (original) +++ pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/BookmarkValidationProcess.java Sun Feb 1 19:07:22 2015 @@ -21,6 +21,7 @@ package org.apache.pdfbox.preflight.process; +import java.io.IOException; import java.util.HashSet; import java.util.Set; @@ -35,8 +36,10 @@ import org.apache.pdfbox.cos.COSName; import org.apache.pdfbox.cos.COSNull; import org.apache.pdfbox.cos.COSObject; import org.apache.pdfbox.pdmodel.PDDocumentCatalog; +import org.apache.pdfbox.pdmodel.interactive.documentnavigation.destination.PDDestination; import org.apache.pdfbox.pdmodel.interactive.documentnavigation.outline.PDDocumentOutline; import org.apache.pdfbox.pdmodel.interactive.documentnavigation.outline.PDOutlineItem; +import static org.apache.pdfbox.preflight.PreflightConfiguration.DESTINATION_PROCESS; import org.apache.pdfbox.preflight.PreflightContext; import org.apache.pdfbox.preflight.ValidationResult.ValidationError; import org.apache.pdfbox.preflight.exception.ValidationException; @@ -217,6 +220,10 @@ public class BookmarkValidationProcess e { ContextHelper.validateElement(ctx, dictionary, ACTIONS_PROCESS); } + else if (dest != null) + { + ContextHelper.validateElement(ctx, dest, DESTINATION_PROCESS); + } // else no specific validation // check children Modified: pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/reflect/ActionsValidationProcess.java URL: http://svn.apache.org/viewvc/pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/reflect/ActionsValidationProcess.java?rev=1656347&r1=1656346&r2=1656347&view=diff ============================================================================== --- pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/reflect/ActionsValidationProcess.java (original) +++ pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/reflect/ActionsValidationProcess.java Sun Feb 1 19:07:22 2015 @@ -38,10 +38,12 @@ import org.apache.pdfbox.preflight.Valid public class ActionsValidationProcess extends AbstractProcess { + @Override public void validate(PreflightContext context) throws ValidationException { PreflightPath vPath = context.getValidationPath(); - if (vPath.isEmpty()) { + if (vPath.isEmpty()) + { return; } else if (!vPath.isExpectedType(COSDictionary.class)) Modified: pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/reflect/AnnotationValidationProcess.java URL: http://svn.apache.org/viewvc/pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/reflect/AnnotationValidationProcess.java?rev=1656347&r1=1656346&r2=1656347&view=diff ============================================================================== --- pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/reflect/AnnotationValidationProcess.java (original) +++ pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/reflect/AnnotationValidationProcess.java Sun Feb 1 19:07:22 2015 @@ -35,10 +35,12 @@ import org.apache.pdfbox.preflight.proce public class AnnotationValidationProcess extends AbstractProcess { + @Override public void validate(PreflightContext context) throws ValidationException { PreflightPath vPath = context.getValidationPath(); - if (vPath.isEmpty()) { + if (vPath.isEmpty()) + { return; } else if (!vPath.isExpectedType(COSDictionary.class)) Added: pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/reflect/DestinationValidationProcess.java URL: http://svn.apache.org/viewvc/pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/reflect/DestinationValidationProcess.java?rev=1656347&view=auto ============================================================================== --- pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/reflect/DestinationValidationProcess.java (added) +++ pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/reflect/DestinationValidationProcess.java Sun Feb 1 19:07:22 2015 @@ -0,0 +1,118 @@ +/* + * Copyright 2015 The Apache Software Foundation. + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ +package org.apache.pdfbox.preflight.process.reflect; + +import java.io.IOException; +import org.apache.pdfbox.cos.COSArray; +import org.apache.pdfbox.cos.COSBase; +import org.apache.pdfbox.cos.COSDocument; +import org.apache.pdfbox.cos.COSName; +import org.apache.pdfbox.cos.COSObject; +import org.apache.pdfbox.pdmodel.interactive.documentnavigation.destination.PDDestination; +import org.apache.pdfbox.preflight.PreflightConstants; +import static org.apache.pdfbox.preflight.PreflightConstants.ERROR_SYNTAX_DICT_INVALID; +import org.apache.pdfbox.preflight.PreflightContext; +import org.apache.pdfbox.preflight.PreflightPath; +import org.apache.pdfbox.preflight.ValidationResult; +import org.apache.pdfbox.preflight.exception.ValidationException; +import org.apache.pdfbox.preflight.process.AbstractProcess; +import org.apache.pdfbox.preflight.utils.COSUtils; + +/** + * + * @author Tilman Hausherr + */ +public class DestinationValidationProcess extends AbstractProcess +{ + + @Override + public void validate(PreflightContext ctx) throws ValidationException + { + PreflightPath vPath = ctx.getValidationPath(); + if (vPath.isEmpty()) + { + return; + } + if (!vPath.isExpectedType(COSBase.class)) + { + ctx.addValidationError(new ValidationResult.ValidationError(PreflightConstants.ERROR_ACTION_INVALID_TYPE, + "Destination validation process needs at least one COSBase object")); + return; + } + COSBase dest = (COSBase) vPath.peek(); + + // "A destination may be specified either explicitly by + // an array of parameters defining its properties or indirectly by name." + + COSDocument cosDocument = ctx.getDocument().getDocument(); + if (!(dest instanceof COSName || COSUtils.isString(dest, cosDocument) || COSUtils.isArray(dest, cosDocument))) + { + ctx.addValidationError(new ValidationResult.ValidationError(ERROR_SYNTAX_DICT_INVALID, + "Destination type entry " + dest.getClass().getSimpleName() + " is invalid")); + return; + } + + if (dest instanceof COSArray) + { + COSArray ar = (COSArray) dest; + if (ar.size() < 2) + { + ctx.addValidationError(new ValidationResult.ValidationError(ERROR_SYNTAX_DICT_INVALID, + "Destination array must have at least 2 elements")); + return; + } + validateExplicitDestination(ctx, ar); + } + + try + { + PDDestination.create(dest); + } + catch (IOException e) + { + ctx.addValidationError(new ValidationResult.ValidationError(PreflightConstants.ERROR_SYNTAX_DICT_INVALID, + e.getMessage(), e)); + } + + } + + void validateExplicitDestination(PreflightContext ctx, COSArray ar) + { + // "In each case, page is an indirect reference to a page object." + if (ar.get(0) instanceof COSObject) + { + COSObject ob = (COSObject) ar.get(0); + COSBase type = ob.getDictionaryObject(COSName.TYPE); + if (COSName.PAGE.equals(type)) + { + try + { + PDDestination.create(ar); + } + catch (IOException e) + { + ctx.addValidationError(new ValidationResult.ValidationError(ERROR_SYNTAX_DICT_INVALID, + e.getMessage(), e)); + } + return; + } + } + ctx.addValidationError(new ValidationResult.ValidationError(ERROR_SYNTAX_DICT_INVALID, + "First element in Destination array entry must be an indirect reference to a dictionary of /Type /Page, but is " + + ar.getName(0))); + } + +} Propchange: pdfbox/trunk/preflight/src/main/java/org/apache/pdfbox/preflight/process/reflect/DestinationValidationProcess.java ------------------------------------------------------------------------------ svn:eol-style = native Modified: pdfbox/trunk/preflight/src/test/java/org/apache/pdfbox/preflight/action/pdfa1b/TestGotoAction.java URL: http://svn.apache.org/viewvc/pdfbox/trunk/preflight/src/test/java/org/apache/pdfbox/preflight/action/pdfa1b/TestGotoAction.java?rev=1656347&r1=1656346&r2=1656347&view=diff ============================================================================== --- pdfbox/trunk/preflight/src/test/java/org/apache/pdfbox/preflight/action/pdfa1b/TestGotoAction.java (original) +++ pdfbox/trunk/preflight/src/test/java/org/apache/pdfbox/preflight/action/pdfa1b/TestGotoAction.java Sun Feb 1 19:07:22 2015 @@ -61,7 +61,7 @@ public class TestGotoAction extends Abst } }); - valid(gotoAction, false, PreflightConstants.ERROR_ACTION_INVALID_TYPE); + valid(gotoAction, false, PreflightConstants.ERROR_SYNTAX_DICT_INVALID); } @Test