The export to PDF functionality doesn't automatically perform OpenDoPE processing.
You need to take the OpenDoPE output, and run that through PDF export.
I'm not sure exactly what you are doing, and how you end up with duplicates of the first row. But it sounds very much like you are doing
Using java Syntax Highlighting
OpenDoPEHandler odh
= new OpenDoPEHandler
(wordMLPackage
);
odh.
preprocess();
Parsed in 0.014 seconds, using
GeSHi 1.0.8.4
(which will give you the appearance of duplicate rows - the XPaths bindings will actually be different) without then doing
Using java Syntax Highlighting
BindingHandler.
applyBindings(wordMLPackage.
getMainDocumentPart());
Parsed in 0.013 seconds, using
GeSHi 1.0.8.4
(which is what gets the correct content using the XPath bindings).
Please see the ContentControlBindingExtensions sample for a complete example.