Uploaded image for project: 'Maven PDF Plugin'
  1. Maven PDF Plugin
  2. MPDF-47

docDescriptors of other locales than default are ignored for pdf generation

    XMLWordPrintableJSON

Details

    • Bug
    • Status: Closed
    • Major
    • Resolution: Fixed
    • 1.1
    • 1.4
    • None
    • Maven 2.2.1, Windows 7 (and NetBeans 6.9.1)

    Description

      If you have a multi language maven site and you'll try to build a pdf also with multiple locales only the default pdf.xml docDescriptor will be used for generating the pdfs.

      Try following:

      Create a directory layout like:

      +- src/
         +- site/
            +- xdoc/
            |  +- index.xml     (some default language content)
            |  +- help.xml     (some default language content)
            |  +- foo.xml     (some default language content)
            |
            +- de/
            |  +- xdoc/
            |     +- index.xml     (some different content than default language)
            |     +- help.xml     (some different content than default language)
            |     +- foo.xml     (some different content than default language)
            +- site.xml         (Default site descriptor)
            +- site_de.xml      (German site descriptor)
            +- pdf.xml          (Default pdf descriptor)
            +- pdf_de.xml       (German pdf descriptor)
      

      Content of pdf.xml:

      see attachment pdf.xml

      Content of pdf_de.xml:

      see attachment pdf_de.xml

      Content of pom.xml:

      ...
      	<build>
      		...
      		<plugins>
      			...
      			<plugin>
      				<groupId>org.apache.maven.plugins</groupId>
      				<artifactId>maven-site-plugin</artifactId>
      				<version>2.2</version>
      				<configuration>
      					<locales>en,de</locales>
      				</configuration>
      			</plugin>
      			<plugin>
      				<groupId>org.apache.maven.plugins</groupId>
      				<artifactId>maven-pdf-plugin</artifactId>
      				<version>1.1</version>
      				<configuration>
      					<outputDirectory>${project.reporting.outputDirectory}</outputDirectory>
      					<includeReports>false</includeReports>
      					<aggregate>true</aggregate>
      					<locales>en,de</locales>
      				</configuration>
      				<executions>
      					<execution>
      						<id>pdf</id>
      						<phase>site</phase>
      						<goals>
      							<goal>pdf</goal>
      						</goals>
      					</execution>
      				</executions>
      			</plugin>
      		</plugins>
      	</build>
      

      If you now execute

      mvn site
      

      or

      mvn pdf:pdf
      

      and compare the two generated pdfs you'll see that the table of contents is the one from the pdf.xml in both pdfs. I guess in this case the file pdf_de.xml isn't used at anytime during the build, because the build (mvn site or mvn pdf:pdf) is also successful if you have syntax errors in the pdf_de.xml file, e.g. leave a item tag open in that file and build again.

      Attachments

        1. pdf.xml
          0.8 kB
          Fabian Bahle
        2. pdf_de.xml
          0.8 kB
          Fabian Bahle
        3. fix_locale_select.diff
          3 kB
          Tim Rademacher

        Activity

          People

            hboutemy Herve Boutemy
            funfried Fabian Bahle
            Votes:
            1 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: