Package org.openxml4j.opc

Examples of org.openxml4j.opc.PackagePartName


   * Retrieves the PackagePart for the given Relationship
   *  object. Normally you'll want to go via a content type
   *  or r:id to get one of those.
   */
  protected PackagePart getPackagePart(PackageRelationship rel) {
    PackagePartName relName;
    try {
      relName = PackagingURIHelper.createPartName(rel.getTargetURI());
    } catch(InvalidFormatException e) {
      throw new InternalError(e.getMessage());
    }
View Full Code Here


      return false;
    }

    // Saving relationship part
    if (part.hasRelationships()) {
      PackagePartName relationshipPartName = PackagingURIHelper
          .getRelationshipPartName(part.getPartName());

      marshallRelationshipPart(part.getRelationships(),
          relationshipPartName, zos);
View Full Code Here

     * @param rel The relationship
     * @return The target part
     * @throws InvalidFormatException
     */
    protected PackagePart getTargetPart(PackageRelationship rel) throws InvalidFormatException {
        PackagePartName relName = PackagingURIHelper.createPartName(rel.getTargetURI());
        PackagePart part = getPackage().getPart(relName);
        if (part == null) {
            throw new IllegalArgumentException("No part found for relationship " + rel);
        }
        return part;
View Full Code Here

        PackageRelationship rel = workbookPart.getRelationship(relId);
        if(rel == null) {
          throw new IllegalArgumentException("No Sheet found with r:id " + relId);
        }
       
        PackagePartName relName = PackagingURIHelper.createPartName(rel.getTargetURI());
        PackagePart sheet = pkg.getPart(relName);
        if(sheet == null) {
          throw new IllegalArgumentException("No data found for Sheet with r:id " + relId);
        }
        return sheet.getInputStream();
View Full Code Here

    }

    public InputStream next() {
      PackageRelationship sheet = sheetRels.next();
      try {
            PackagePartName relName = PackagingURIHelper.createPartName(sheet.getTargetURI());
        PackagePart sheetPkg = pkg.getPart(relName);
        return sheetPkg.getInputStream();
      } catch(IOException e) {
        throw new RuntimeException(e);
      } catch(InvalidFormatException ife) {
View Full Code Here

        try {
            // Create a package referring the temp file.
            Package pkg = Package.create(stream);
            // Main part
            PackagePartName corePartName = PackagingURIHelper.createPartName("/xl/workbook.xml");
            // Create main part relationship
            pkg.addRelationship(corePartName, TargetMode.INTERNAL, PackageRelationshipTypes.CORE_DOCUMENT, "rId1");
            // Create main document part
            PackagePart corePart = pkg.createPart(corePartName, WORKBOOK.getContentType());
            OutputStream out;

            XmlOptions xmlOptions = new XmlOptions();
            // Requests use of whitespace for easier reading
            xmlOptions.setSavePrettyPrint();
            xmlOptions.setSaveOuter();
            xmlOptions.setUseDefaultNamespace();
           
            // Write out our sheets, updating the references
            //  to them in the main workbook as we go
            for (int i=0 ; i < this.getNumberOfSheets(); i++) {
              int sheetNumber = (i+1);
              XSSFSheet sheet = (XSSFSheet) this.getSheetAt(i);
                PackagePartName partName = PackagingURIHelper.createPartName(
                    WORKSHEET.getFileName(sheetNumber));
                PackageRelationship rel =
                   corePart.addRelationship(partName, TargetMode.INTERNAL, WORKSHEET.getRelation(), "rSheet" + sheetNumber);
                PackagePart part = pkg.createPart(partName, WORKSHEET.getContentType());
                
                // XXX This should not be needed, but apparently the setSaveOuter call above does not work in XMLBeans 2.2
                xmlOptions.setSaveSyntheticDocumentElement(new QName(CTWorksheet.type.getName().getNamespaceURI(), "worksheet"));
                sheet.save(part, xmlOptions);
                
                // Update our internal reference for the package part
                workbook.getSheets().getSheetArray(i).setId(rel.getId());
                workbook.getSheets().getSheetArray(i).setSheetId(sheetNumber);
               
                // If our sheet has comments, then write out those
                if(sheet.hasComments()) {
                  CommentsTable ct = (CommentsTable)sheet.getCommentsSourceIfExists();
                    PackagePartName ctName = PackagingURIHelper.createPartName(
                        SHEET_COMMENTS.getFileName(sheetNumber));
                    part.addRelationship(ctName, TargetMode.INTERNAL, SHEET_COMMENTS.getRelation(), "rComments");
                    PackagePart ctPart = pkg.createPart(ctName, SHEET_COMMENTS.getContentType());
                   
                    out = ctPart.getOutputStream();
View Full Code Here

            PackageRelationshipCollection prc =
              corePart.getRelationshipsByType(REL);
            Iterator<PackageRelationship> it = prc.iterator();
            if(it.hasNext()) {
                PackageRelationship rel = it.next();
                PackagePartName relName = PackagingURIHelper.createPartName(rel.getTargetURI());
                PackagePart part = corePart.getPackage().getPart(relName);
                return part.getInputStream();
            } else {
              log.log(POILogger.WARN, "No part " + DEFAULT_NAME + " found");
              return null;
View Full Code Here

    /**
     * Save, with the specified name
     * @return The internal reference ID it was saved at, normally then used as an r:id
     */
    private String save(XSSFModel model, PackagePart corePart, String name) throws IOException {
            PackagePartName ppName = null;
            try {
              ppName = PackagingURIHelper.createPartName(name);
            } catch(InvalidFormatException e) {
              throw new IllegalStateException(e);
            }
View Full Code Here

    // Create a package
    Package pkg = Package.create(outputDocument);

    /* Main part */

    PackagePartName corePartName = PackagingURIHelper
        .createPartName("/word/document.xml");

    // Create main part relationship
    pkg.addRelationship(corePartName, TargetMode.INTERNAL,
        PackageRelationshipTypes.CORE_DOCUMENT, "rId1");
View Full Code Here

    }
   
    String relId = sheetDef.attributeValue("id");
    PackageRelationship rel =
      workbookPart.getRelationship(relId);
    PackagePartName relName =
      PackagingURIHelper.createPartName(rel.getTargetURI());
   
    PackagePart sheet = container.getPart(relName);
    if(sheet == null) {
      throw new OpenXML4JException("No part found for rel " + rel);
View Full Code Here

TOP

Related Classes of org.openxml4j.opc.PackagePartName

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.