Author: tilman
Date: Sun Sep 13 07:26:51 2026
New Revision: 1938161

Log:
PDFBOX-6261: fix ClassCastException so that method works, improve javadoc, add 
logging

Modified:
   
pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/documentinterchange/taggedpdf/PDExportFormatAttributeObject.java
   
pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/documentinterchange/taggedpdf/PDStandardAttributeObject.java
   
pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/documentinterchange/taggedpdf/PDTableAttributeObject.java

Modified: 
pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/documentinterchange/taggedpdf/PDExportFormatAttributeObject.java
==============================================================================
--- 
pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/documentinterchange/taggedpdf/PDExportFormatAttributeObject.java
 Sun Sep 13 07:26:47 2026        (r1938160)
+++ 
pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/documentinterchange/taggedpdf/PDExportFormatAttributeObject.java
 Sun Sep 13 07:26:51 2026        (r1938161)
@@ -160,8 +160,8 @@ public class PDExportFormatAttributeObje
      * shall be the element identifier (see the
      * {@link 
org.apache.pdfbox.pdmodel.documentinterchange.logicalstructure.PDStructureElement#getElementIdentifier()})
 for a TH structure
      * element that shall be used as a header associated with this cell.
-     * 
-     * @return the headers.
+     *
+     * @return the headers or null if there are none.
      */
     public String[] getHeaders()
     {

Modified: 
pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/documentinterchange/taggedpdf/PDStandardAttributeObject.java
==============================================================================
--- 
pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/documentinterchange/taggedpdf/PDStandardAttributeObject.java
     Sun Sep 13 07:26:47 2026        (r1938160)
+++ 
pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/documentinterchange/taggedpdf/PDStandardAttributeObject.java
     Sun Sep 13 07:26:51 2026        (r1938161)
@@ -16,6 +16,9 @@
  */
 package org.apache.pdfbox.pdmodel.documentinterchange.taggedpdf;
 
+import org.apache.commons.logging.Log;
+import org.apache.commons.logging.LogFactory;
+
 import org.apache.pdfbox.cos.COSArray;
 import org.apache.pdfbox.cos.COSBase;
 import org.apache.pdfbox.cos.COSDictionary;
@@ -33,6 +36,8 @@ import org.apache.pdfbox.pdmodel.graphic
  */
 public abstract class PDStandardAttributeObject extends PDAttributeObject
 {
+    private static final Log LOG = 
LogFactory.getLog(PDStandardAttributeObject.class);
+
     /**
      * An "unspecified" default float value.
      */
@@ -109,7 +114,12 @@ public abstract class PDStandardAttribut
             String[] strings = new String[array.size()];
             for (int i = 0; i < array.size(); i++)
             {
-                strings[i] = ((COSName) array.getObject(i)).getName();
+                strings[i] = array.getString(i);
+                if (strings[i] == null)
+                {
+                    // We may have to improve this.
+                    LOG.warn("Element " + i + " is " + array.getObject(i) + " 
but should be a string");
+                }
             }
             return strings;
         }

Modified: 
pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/documentinterchange/taggedpdf/PDTableAttributeObject.java
==============================================================================
--- 
pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/documentinterchange/taggedpdf/PDTableAttributeObject.java
        Sun Sep 13 07:26:47 2026        (r1938160)
+++ 
pdfbox/branches/3.0/pdfbox/src/main/java/org/apache/pdfbox/pdmodel/documentinterchange/taggedpdf/PDTableAttributeObject.java
        Sun Sep 13 07:26:51 2026        (r1938161)
@@ -119,8 +119,8 @@ public class PDTableAttributeObject exte
      * shall be the element identifier (see the
      * {@link 
org.apache.pdfbox.pdmodel.documentinterchange.logicalstructure.PDStructureElement#getElementIdentifier()})
 for a TH structure
      * element that shall be used as a header associated with this cell.
-     * 
-     * @return the headers.
+     *
+     * @return the headers or null if there are none.
      */
     public String[] getHeaders()
     {

Reply via email to