Bug 1006624

Summary: Can not build a translated book
Product: [Community] PressGang CCMS Reporter: Matthew Casperson <mcaspers>
Component: REST-APIAssignee: Lee Newson <lnewson>
Status: CLOSED CURRENTRELEASE QA Contact:
Severity: unspecified Docs Contact:
Priority: unspecified    
Version: 1.1CC: cbredesen, lnewson
Target Milestone: ---Keywords: Reopened
Target Release: 1.2   
Hardware: Unspecified   
OS: Unspecified   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2013-10-17 23:49:37 UTC Type: Bug
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:

Description Matthew Casperson 2013-09-10 23:56:35 UTC
[root@localhost ~]# csprocessor preview --lang fr --yes 11864
CSProcessor client version: 1.0.1
Loading configuration from /root/.config/csprocessor.ini
Connecting to PressGang server: http://topika.ecs.eng.bne.redhat.com:8080/pressgang-ccms/rest/

WARN:  The latest version of this Content Specification has changes that haven't been pushed for translation yet and therefore will not be reflected in the build.

Starting first validation pass...
Starting second validation pass...
INFO:  The Content Specification is valid.

Starting to build...
Doing fr Populate Database Pass
Doing Revisions Fixed URL Pass
Doing fr First topic pass
        Processing 373 Topics
        First topic Pass 5% Done
        First topic Pass 10% Done
        First topic Pass 15% Done
        First topic Pass 20% Done
        First topic Pass 25% Done
        First topic Pass 30% Done
        First topic Pass 35% Done
        First topic Pass 40% Done
        First topic Pass 45% Done
        First topic Pass 50% Done
        First topic Pass 55% Done
        First topic Pass 60% Done
        First topic Pass 65% Done
        First topic Pass 70% Done
        First topic Pass 75% Done
        First topic Pass 80% Done
        First topic Pass 85% Done
        First topic Pass 90% Done
        First topic Pass 95% Done
        First topic Pass 100% Done
Doing fr Topic Link Pass
Doing fr Spec Topic Pass
        Processing 382 Spec Topics
ERROR: Internal processing error!

org.jboss.pressgang.ccms.provider.exception.InternalServerErrorException: java.lang.NullPointerException

        at org.jboss.pressgang.ccms.rest.RESTErrorInterceptor.handle(RESTErrorInterceptor.java:29)
        at org.jboss.resteasy.client.core.extractors.ClientErrorHandler.clientErrorHandling(ClientErrorHandler.java:49)
        at org.jboss.resteasy.client.core.extractors.BodyEntityExtractor.extractEntity(BodyEntityExtractor.java:44)
        at org.jboss.resteasy.client.core.ClientInvoker.invoke(ClientInvoker.java:120)
        at org.jboss.resteasy.client.core.ClientProxy.invoke(ClientProxy.java:88)
        at sun.proxy.$Proxy27.getJSONTranslatedTopicRevision(Unknown Source)
        at org.jboss.pressgang.ccms.provider.RESTTranslatedTopicProvider.loadTranslatedTopic(RESTTranslatedTopicProvider.java:47)
        at org.jboss.pressgang.ccms.provider.RESTTranslatedTopicProvider.getRESTTranslatedTopicOutgoingRelationships(RESTTranslatedTopicProvider.java:175)
        at org.jboss.pressgang.ccms.proxy.RESTTranslatedTopicV1ProxyHandler.internalInvoke(RESTTranslatedTopicV1ProxyHandler.java:47)
        at org.jboss.pressgang.ccms.proxy.RESTTranslatedTopicV1ProxyHandler.internalInvoke(RESTTranslatedTopicV1ProxyHandler.java:15)
        at org.jboss.pressgang.ccms.proxy.RESTBaseEntityV1ProxyHandler.invoke(RESTBaseEntityV1ProxyHandler.java:59)
        at org.jboss.pressgang.ccms.rest.v1.entities.RESTTranslatedTopicV1_$$_javassist_19.getOutgoingRelationships(RESTTranslatedTopicV1_$$_javassist_19.java)
        at org.jboss.pressgang.ccms.wrapper.RESTTranslatedTopicV1Wrapper.getOutgoingRelationships(RESTTranslatedTopicV1Wrapper.java:104)
        at org.jboss.pressgang.ccms.contentspec.builder.DocbookBuilder.processSpecTopicInjections(DocbookBuilder.java:1469)
        at org.jboss.pressgang.ccms.contentspec.builder.DocbookBuilder.doSpecTopicSecondPass(DocbookBuilder.java:1334)
        at org.jboss.pressgang.ccms.contentspec.builder.DocbookBuilder.buildBook(DocbookBuilder.java:530)
        at org.jboss.pressgang.ccms.contentspec.builder.ContentSpecBuilder.buildTranslatedBook(ContentSpecBuilder.java:163)
        at org.jboss.pressgang.ccms.contentspec.client.commands.BuildCommand.buildContentSpec(BuildCommand.java:667)
        at org.jboss.pressgang.ccms.contentspec.client.commands.BuildCommand.process(BuildCommand.java:467)
        at org.jboss.pressgang.ccms.contentspec.client.commands.AssembleCommand.process(AssembleCommand.java:102)
        at org.jboss.pressgang.ccms.contentspec.client.commands.PreviewCommand.process(PreviewCommand.java:50)
        at org.jboss.pressgang.ccms.contentspec.client.Client.processArgs(Client.java:252)
        at org.jboss.pressgang.ccms.contentspec.client.Client.main(Client.java:106)

Comment 1 Lee Newson 2013-09-11 00:06:21 UTC
Reassigning to the REST-API as the error indicates that this is a problem with the server.

The error on the server looks to be from this:

java.util.regex.PatternSyntaxException: Illegal character range near index 23
^[a-zA-Z]+[a-zA-Z0-9_-\\.]*$
                       ^
        at java.util.regex.Pattern.error(Pattern.java:1924) [rt.jar:1.7.0_25]
        at java.util.regex.Pattern.range(Pattern.java:2594) [rt.jar:1.7.0_25]
        at java.util.regex.Pattern.clazz(Pattern.java:2507) [rt.jar:1.7.0_25]
        at java.util.regex.Pattern.sequence(Pattern.java:2030) [rt.jar:1.7.0_25]
        at java.util.regex.Pattern.expr(Pattern.java:1964) [rt.jar:1.7.0_25]
        at java.util.regex.Pattern.compile(Pattern.java:1665) [rt.jar:1.7.0_25]
        at java.util.regex.Pattern.<init>(Pattern.java:1337) [rt.jar:1.7.0_25]
        at java.util.regex.Pattern.compile(Pattern.java:1022) [rt.jar:1.7.0_25]
        at java.util.regex.Pattern.matches(Pattern.java:1128) [rt.jar:1.7.0_25]
        at java.lang.String.matches(String.java:2063) [rt.jar:1.7.0_25]
        at org.jboss.pressgang.ccms.model.base.ToPropertyTag.isValid(ToPropertyTag.java:23) [pressgang-ccms-model-1.1-20130906.021929-65.jar:]

Comment 2 Lee Newson 2013-09-16 23:54:00 UTC
Fixed in 1.2-SNAPSHOT build 201309170914

At first I thought this was caused by a versioning problem because the NPE was from being unable to find the revision number. However upon looking into it more this morning I found the root cause was actually because the wrong parent revision was being specified.

As for the book being unable to build I also did a fix in csprocessor 1.0.2 so that the outgoing relationships aren't pulled down, since they aren't used. Which in turn allows the book to be built against the 1.1 API without the error occurring.