Creating XML from a POJO using StAX

Hi Experts,
I have a POJO and now want to create an XML which has the elements as that of the POJO using StAX.
Can anybody please help me out.
Thanks in advance.

swati_pekam wrote:
Yes I totally agree with you, had initially used JAXB....however client needs StAX to be used.. :(What? Why?
Do you mean "client" as in "client side program"?
In that case, the requirement is bullshit, because the receiving end of the XML doesn't know which technology is used to create it.
Do you mean "client" as in "the people who pay me to do that"?
In that case, the requirement is bullshit, because they should not force you to use tools that are not fit for the task ..
Please clarify this requirement. Why exactly do you think (or does the client think) that you need to use StAX?

Similar Messages

  • Creating XML from Relational Tables using java

    I would like to create an XML document by querying relational tables in java
    try {
            connection = getConnection();
            final String qryStr = "select XMLElement( foo, 'bar' ) from dual";
            final OracleXMLQuery qry = new OracleXMLQuery(connection, qryStr);
            final String xmlString = qry.getXMLString();
    I would expect this to give the following result that I get from running the statement in SQL Developer
    select XMLElement( foo, 'bar' ) from dual
    <FOO>bar</FOO>
    Instead I get
    <?xml version = '1.0'?>
    <ERROR>oracle.xml.sql.OracleXMLSQLException: Character ')' is not allowed in an XML tag name.</ERROR>
    Is this the correct way to go about this?

    Is this the correct way to go about this?
    Not really.
    OracleXMLQuery class is the Java-side implementation of DBMS_XMLQUERY APIs.
    It's mostly designed to generate a canonical XML document out of a SQL query.
    Assuming a query like "SELECT col1, col2 FROM my_table", the resulting XML should appear like this :
    <ROWSET>
      <ROW>
        <COL1>123</COL1>
        <COL2>ABC</COL2>
      </ROW>
      <ROW>
        <COL1>456</COL1>
        <COL2>XYZ</COL2>
      </ROW>
    </ROWSET>
    So in your test, since the resulting column is not aliased (XMLElement), you're actually trying to generate something like this :
    <ROWSET>
      <ROW>
        <XMLELEMENT(FOO,'BAR')>
          <FOO>bar</FOO>
        </XMLELEMENT(FOO,'BAR')>
      </ROW>
    <ROWSET>
    which of course is invalid, hence the error message.
    If you want to generate only <FOO>bar</FOO> as output, just use a regular PreparedStatement with your query and access the document in the ResultSet with the proper getter.

  • Adobe v9 on W7 and office 2007. cannot create PDF from MS word using Adobe. But can from Excel, PPT

    Adobe v9 on W7 and office 2007. cannot create PDF from MS word using Adobe. But can from Excel, PPT and other MS office apps. Reinslalled Adobe, updated Office, and Adobe no help! Also I can create a pdf from the MS Word and it is using the Adobe 9. So one would think that's good. No it isn't when you need to combine different files to one big PDF document. Any suggetions? Thank you

    Yes, I’m saying that I can in WORD use “Save As ADOBE pdf” but cannot in ADOBE create a pdf file from a WORD (.doc or .docx) document. While I can from other MS Office apps like Excel and PowerPoint.
    I understand I can use “work around” and save doc in WORD as pdf then compile all files needed (xml, ppt, pdf) in the ADOBE v9. to one big pdf document. But that is not the point of this post.  
    Jarda @ PC+NET Solutions
    Mobile 613-532-7023
    Office  613-385-1268
    <http://www.pcplusnet.net/> www.pcplusnet.net

  • Help in creating XML documents in ABAP using XI in new version ECC6.0

    Hello All:
       I am pretty comfortable with XML and XSLT but new to XI. Is there a way of creating XML documents in ABAP using XI in new version ECC6.0? Please provide me with any links or any information you may have. All the answers will be rewarded.
    Thanks.
    Mithun

    hi,
    U cant create XML data in ABAP.
    to send the data to the XI, u have to use the IDOC or RFC FM, from there IDOC or RFC adapters will read the data in the same  format  and these adapters will convert the data in to  XML .Bcoz XI understand only XML data.
    from there XI will process and route them to Destination, by using anthor adapter.
    here u can use file adapter if u want data in file foramat from the IDOC or RFC .
    So XI is the integration tool only.
    reward points if helpful
    ragards
    sreeni

  • Creating XML from JDBC resultset

    Can anyone give me a pointer as the best way to create XML from a JDBC resultset. I have told that XSU cannot be used as it is vendor specific and ties us to Oracle (yawn, yawn).
    Any ideas welcomed.

    import javax.xml.parsers.*;
    import org.w3.dom.*;
    import javax.xml.dom.*;
    import javax.xml.dom.source.*;
    import javax.xml.dom.stream.*;
    import java.sql.*;
    public class CreateXML{
    DocumentBuilderFactory dbf=DocumentBuilderFactory.newInstance();
    DocumentBuilder db=dbf.newDocumentBuilder();
    Document doc=db.newDocument();
    Element root=doc.createElement("root_element");
    // coonect to database
    //get resultset metadata rsmd
    while(rs.next()){
    Element row=doc.createElement("row");
    for(int j=1;j<=rsmd.getColumnCount();j++){
    String colName=rsmd.getCoulmName(j);
    String colValue=rs.getString(j);
    Element e=doc.createElement(colName);
    e.appendChild(doc.createTextNode(colValue));
    row.appendChild(e);
    root.appendChild(row);
    doc.appendChild(root);
    //You can now use XSLT to generate xml file thus:
    TransformerFactory tmf=TransformerFactory.newInstance();
    Transformer tf=tmf.newTransformer();
    DOMSource source=new DOMSource(doc);
    StreamResult result=new StreamResult("name of file for output");
    tf.transform(source,result);
    // of course exceptions will have to be caught in this code.

  • Creating XML from raw data

    I am trying to create xml from raw data. It works well in the format builder but
    when I instanciate the MFLObject and run convert to xml, the output only contains
    wrappers for my first field described in the mfl. Are there any known issues
    using this progmattic conversion to XML.
    My mfl is the following:
    <?xml version='1.0' encoding='UTF-8'?>
    <!DOCTYPE MessageFormat SYSTEM 'mfl.dtd'>
    <!-- Enter description of the message format here. -->
    <MessageFormat name='BossRecord' version='2.01'>
    <FieldFormat name='Header' type='String' length='102' codepage='windows-1252'/>
    <StructFormat name='TransactionControlRecord' delim='999'>
    <FieldFormat name='TransactionTypeNumber' type='String' length='3' codepage='windows-1252'/>
    <FieldFormat name='TransactionData' type='String' codepage='windows-1252'>
    <LenField type='Numeric' length='4'/>
    </FieldFormat>
    </StructFormat>
    <StructFormat name='Generic' repeat='*'>
    <FieldFormat name='GenericTypeNumber' type='String' length='3' codepage='windows-1252'/>
    <FieldFormat name='GenericData' type='String' codepage='windows-1252'>
    <LenField type='Numeric' length='4'/>
    </FieldFormat>
    </StructFormat>
    <FieldFormat name='IgnoreTheRest' type='Filler' optional='y' length='1' repeat='*'>
    <!--
    This field is useful for testing partially constructed formats. Adding
    this field to the
    end of a format will cause any leftover bytes on the end of a binary file to be
    ignored when the data is converted to XML.
    -->
    </FieldFormat>
    </MessageFormat>
    Are there any issues with this that are easy to spot?
    Here is some sample output:
    _BossRecordDoc : <BossRecord>
    <Header>0601uskyloupw7vu0 IBVRTR 000006RSQ1010246000000000000020436000001-01-01-00.00.00.00000000000100170</Header>
    <Header>90100581D4EBC00AA3C18629ACA0004AC02E54BD289357023141961111F1111 99900207141D4EBC00AA3C18629ACA0004AC0</Header>
    <Header>2E54BD2893570231RIBBONS & BUTTONS 9 00000000000010.50CAD00000000000000.5</Header>
    <Header>0USD00000000000000.00USD00000000000077.00CAD 0CAUS00000000000000.91KGSA215D100CF3C18619AC</Header>
    <Header>90004AC02E54B 01 0001-0</Header>
    <Header>1-012003-04-072003-06-2501P/P03003984196000010100000000000000.00CAD 00
    FR00000000000000</Header>
    <Header>.0000000000000000000.00KGS00000000000000.00USD 00UPS T1</Header>
    <Header>0001-01-010001-01-01 0 000000000000000.00000000000000000.00USD0</Header>
    <Header>000000000000000.00 1 22222222222220 0100304061DC30500AA3C18629ACA</Header>
    <Header>0004AC02E54B1D4EBC00AA3C18629ACA0004AC02E54B</Header>
    <Header> 0010001-01-01 00000000000000.00USD00</Header>
    <Header>000000000000.00CAD00000000000010.00CAD</Header>
    <Header> 00000000000010.00CAD000000000000000010001-01-01K00404862A8D2C00AA3C186</Header>
    <Header>29ACA0004AC02E54B1DC30500AA3C18629ACA0004AC02E54B001 PURPLE RIBBONS</Header>
    It just keeps finding my first record instead of finding the remaing structure.
    I appreciate any help.
    Thanks,
    Michael

    Okay, I've got some coding off a site that looks like it will do what I want. It's quite a robust applications which will do more than I need but as long as it does at least what I want, i could care less. As it will extract files from the datastream for me, it is going to save them to disk.
    I believe I have to specify a directory to save it to. I believe this is the line I'm going to modify, so assuming that's the case, how do I specify a directory here:
    private File fileOutPutDirectory = null;
    Do I have to use absolute paths or can I use relative. Also, what directory construct is expected by java? Anyone with an example of what urls are supposed to look like in this case?
    Thanks,
    destin

  • CREATE XML PUBLISHER REPORT WITHOUT USING RDF

    Hi Every one ,
    Can anybody share his/her expertise on following issue ?
    "How to create XML Publisher Report without using RDF?"
    Your help is appreciated.

    Hi Swapnesh
    YOu do not need to create the XDODTEXE, its seeded for you. You need to do the following:
    1. Create and test the data template
    2. Load the data template to the template manager against a data definition
    3. Create a concurrent program definition that uses the XDODTEXE as its executable
    4. Create parameters (if required) for the CP and DT that match in name
    You're done
    Regards
    Tim

  • I have created PDF from hardcopy by using my scanner. After I run OCR option for my PDF by using Acrobat Pro 9. But "Text-to-speech" functionality of the PDF says that an error message comes up that says the page is empty when I turns on the read out loud

    I have created PDF from hardcopy by using my scanner. After I run OCR option for my PDF by using Acrobat Pro 9. But "Text-to-speech" functionality of the PDF says that an error message comes up that says the page is empty when I turns on the read out loud option in Acrobat. Kindly help me to sortout this problems?

    So I tried generating the same PDFs on two other computers that have Acrobat 9 Pro.  Results were reproduced.  The verdict is:
    - complex PDF files (that is, containing cross-references, tables of contents, and bookmarks) generated by Acrobat 9.x Pro are roughly 2-5x larger than the identical file generated with Acrobat 8.x Pro.
    - different PDF conversion settings make a negligable difference (less than 10% rather than 70-80%).
    - using the "Reduce File Size" or "Optimize PDF" option cuts the file size roughly in half, almost always resulting in a "image downsampling mask" warning message, which requires acknowledgement (that is a problem for batch processing or automation).
    - adding an Acrobat watermark to the file cuts the file size roughly in half.
    - just using Save As to another filename has no effect on file size.
    - generating the PDF in Acrobat 9 with links but no PDF bookmarks still results in the inflated file size.
    - generating the PDF in Acrobat 9 without any links or bookmarks results in approximately the same file size as the Acrobat 8 PDF with full links and bookmarks.
    It appears that Acrobat 9's manner of adding links is what's bloating  the files, and in my case it's probably not related to images or image resolution/print quality.  It's a shame, because Acrobat 9 seems to have made some  improvements to the Review Tracker interface, and a few other bells and  whistles which I haven't really gotten around to exporing yet.  But  unless I find a way to keep my links and the PDF file sizes comparable to what I was  getting with Acrobat 8 Pro, it looks like I'm going to stay with Acrobat 8.

  • Not able to create XML from an existing relational database

    Hi,
    I am trying to create and xml from an existing relational database. I am not able to get any XML data, I receive "XMLTYPE()" as the result.
    Here's the query -
    SQL> select o.order_id, XMLELEMENT("order", XMLATTRIBUTES(o.order_id as ID)) AS "result" from order_
    info o where order_id=2793;
    ORDER_ID
    result()
    +2793+
    XMLTYPE()
    I was expecting to get +<order id=2793 />+ instead of XMLTYPE().
    I am using -
    SQLPlus: Release 9.0.1.0.1*
    Oracle Database 10g Enterprise Edition Release 10.2.0.1.0 - 64bit Production
    I have also run some checks to confirm XML DB installation -
    SQL> select 1 from all_users where username  = 'XDB';
    +1+
    +1+
    SQL> desc RESOURCE_VIEW;
    Name                                      Null?    Type
    RES                                                SYS.XMLTYPE
    ANY_PATH                                           VARCHAR2(4000)
    RESID                                              RAW(16)
    I think, I have something wrong with installation or configuration.
    Any idea about what have I done wrong here?

    Works fine now. Got the result "<order ID="2793"></order>".
    Thanks. :-)

  • Create XML from XSD

    Hi,
    Is it possible to create and populate XML from an XSD without knowing what the XSD elements are beforehand (all the examples appear to know what the input XSD will be, and therefore know what the set and get methods should be called)?
    Can a user browse for an xsd to input, and the java will dynamically create the get methods, and be able to create instances and populate variables before converting to XML?
    I have looked at JAXB and the purchase.order examples mainly, and it appears the input XSD was known before writing the java to populate the variables.
    Thanks
    John

    Hi,
    Is it possible to create and populate XML from an XSD
    without knowing what the XSD elements are beforehand
    (all the examples appear to know what the input XSD
    will be, and therefore know what the set and get
    methods should be called)? I think it is possible--you would have to recompile each time (unless you can dynamically recompile, which would be neat), but using the classes getMethod() function, you can list all the methods. You would then have to do some tricky logic to determine which of the getMethods you want (for example NOT getClass()), and you can basically call them in sequence. You also need to worry about handling lists & recursively call xxxType classes.
    I'm experimenting with this, and it can get a little frustrating because there are a lot of odd cases to handle (for example, while setting the elements of a list, you need to actually get the list & add elements to it), but I think it's possible.
    >
    Can a user browse for an xsd to input, and the java
    will dynamically create the get methods, and be able
    to create instances and populate variables before
    converting to XML?
    What I'm puzzled about is where you'd get the data to populate the variables? Perhaps a database, or a bean? If you just want to make a test xml file, then it doesn't matter, but with real data, I think you'd still have to change how you actually get the variables you want to populate the xml file with, right? In other words, if your schema changed, the parameters you're passing to the set methods would change as well.
    Maybe we'll see some more packages in the future to make this task easier.

  • Creating XML from large result sets

    We are trying to create XML docs from queries that return somewhere in the neighborhood of 13000+ rows, each with as many as 30 columns. It seems someplace deep within the xmlgen utility or the xsu methods, we throw an OutOfMemoryError. This happens whether we run as a java stored procedure, a pl/sql stored procedure, pl/sql script or java servlet. It looks like the top of the stack shows the problem occurs trying to extendCapacity in a StringBuffer. We're running 8.1.6 with java 1.2.2 and xsu 1.2. Has anyone had to query large amounts of data like this and if so, how did you go about it? Is there a slick way to break things up and then string everything back into 1 big xml doc? Any help would be greatly appreciated. Thanks.

    I guess you can use pagination,
    either using xsu or Top N Queries and then you could merge all the pages in an unique XML or DOM tree prior to persist it to disk.
    With XSU:
    Go to the following link for a clear explanation:
    <http://technet.oracle.com/docs/products/oracle8i/doc_library/817_doc/appdev.817/a86030/adx04x11.htm#1008351>
    With Top N queries:
    Go to the following thread of this forum to see a similar question I raised and it was answered in detail:
    <http://technet.oracle.com:89/ubb/Forum11/HTML/004711.html>
    - Jose Angel -

  • Creating XML from XSD, Only create The First Element

    Hi,
    I create a XML File from a xsd schema by this way:
                DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
              factory.setNamespaceAware(true);
              factory.setValidating(true);
                   factory.setAttribute(JAXP_SCHEMA_LANGUAGE,W3C_XML_SCHEMA);
                   factory.setAttribute(JAXP_SCHEMA_SOURCE, new File(MY_SCHEMA));   
                    DocumentBuilder documentBuilder =factory.newDocumentBuilder();
              documentBuilder.setErrorHandler(new SimpleDOMHandler());
              Document parse = documentBuilder.parse(new File(MY_XML));The first lines of the schema:
    <?xml version="1.0" encoding="UTF-8" standalone="yes"?>
    <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
         targetNamespace="http://gencat.net/scsp/esquemes/peticion"
         elementFormDefault="qualified" attributeFormDefault="unqualified"
         id="Peticio" xmlns:p="http://gencat.net/scsp/esquemes/peticion">
         <xs:element name="Apellido1">
              <xs:simpleType>
                   <xs:restriction base="xs:string">
                        <xs:maxLength value="40" />
                   </xs:restriction>
              </xs:simpleType>
         </xs:element>
         <xs:element name="Apellido2">
            .............................The problem is that the created document only have the first element "Apellido1". I dont know if it is a wrong xsd, or i'm using a bad way to do it.
    Thanks a lot, and apologize for my english

    Hi,
    Is it possible to create and populate XML from an XSD
    without knowing what the XSD elements are beforehand
    (all the examples appear to know what the input XSD
    will be, and therefore know what the set and get
    methods should be called)? I think it is possible--you would have to recompile each time (unless you can dynamically recompile, which would be neat), but using the classes getMethod() function, you can list all the methods. You would then have to do some tricky logic to determine which of the getMethods you want (for example NOT getClass()), and you can basically call them in sequence. You also need to worry about handling lists & recursively call xxxType classes.
    I'm experimenting with this, and it can get a little frustrating because there are a lot of odd cases to handle (for example, while setting the elements of a list, you need to actually get the list & add elements to it), but I think it's possible.
    >
    Can a user browse for an xsd to input, and the java
    will dynamically create the get methods, and be able
    to create instances and populate variables before
    converting to XML?
    What I'm puzzled about is where you'd get the data to populate the variables? Perhaps a database, or a bean? If you just want to make a test xml file, then it doesn't matter, but with real data, I think you'd still have to change how you actually get the variables you want to populate the xml file with, right? In other words, if your schema changed, the parameters you're passing to the set methods would change as well.
    Maybe we'll see some more packages in the future to make this task easier.

  • Creating XML from Oracle Tables

    Would it be possible to post me a snapshot of the ODI Flow diagram for an Oracle to XML conversion? Does the staging area have to be on the Target (XML)? What KMs & CM should be used? Can the XML be written straight back to an .xml file? What should the XML Schema look like?
    These are the KMs I use: LKM-SQL to SQL; IKM-SQL Incremental Update; CKM-SQL.
    My flow is straight from source (oracle) to target (xml), with staging area on target (doesn't feel right).
    My Oracle Dataserver & Schema work fine. Not sure about the XML dataserver setup though - I think this is where the problem lies. These are my JDBC settings:
    - com.sunopsis.jdbc.driver.xml.SnpsXmlDriver
    - jdbc:snps:xml?f=E:\Oracle ODI\Member.xsd
    I am evaluating ODI for a client and I wanted to throw together a quick demo showing how easily ODI can generate XML from any source. I know this is the case as I understand the concept of ODI's components - just haven't had time to read manuals thoroughly.
    Many thanks for your help,
    Steve

    Hello,
    1. Try to test the connection to the XML dataserver.
    2. Create a model and reverse-engineer this dataserver. You'll see what the XML structure is mapped to immediately.
    3. Integrate data to this model (using standard KM targeting "SQL").
    You can put the staging area on the Oracle source or in the XML driver if you want. Both solutions will work.
    just haven't had time to read manuals thoroughly.I think you should quickly read the "Sunopsis ODI with... XML" section in the manual.
    It is not very long and very helpful. Have also a quick look at the XML driver documentation.
    Regards,
    -FX

  • Acrobat 8 can't locate scanner to create PDF from printed document using OCR

    Hello,
    I have an Epson scanner that is my default scanner on my OSX (10.6).  Every program I have locates my scanner perfectly except Acrobat 8.0.  Is there something I can do?
    From the home dialogue box I click "Create PDF from Scanner".  The next dialogue box opens and the Tab "Please Select a Device" doesn't let me scroll to find my scanner.  So the scan button is greyed out and I can't do anything.  Is there something I can do to make Acrobat clearly find my scanner?
    -Luis

    Check to see if they have a Native (not universal Binary) Twain Driver. Adobe refuses to allow universal Binary Twain Drivers in their programs.
    Either use a Software package from the SANE/TWAIN Project. (look up on Google). Or use a Pakage Like SilverFast.
    Before downloading the SANE/Twain Driver you have to look and see if the have a package for your current  OS  and for your particular Scanner. Stayaway from the SDK's unless your a Programer.
    Then when you install all the pieces and set up open Acrobat and go to document Create PDF from Scanner choose SANE/Twain. Should be able to scan with it.
    If you use SliverFast it is a standalone package  Just scan and save as a PDF then open in Acrobat.  or save as a Tiff or jpeg. Acrobat hasn't worked with a scanner since Macs went from OS9  to OSX.

  • Create PDF from Web page using Acrobat X - Page Order

    I have a structured web site that is in fact Program Help The web pages are structured as follows:
    index.html - Main Topic Index page with links to all topic subject index pages
    topic/index.html - Topic Subject Index Page with links to all subject pages
    topic/subject.html - Subject page
    .....etc
    Using Acrobat 5 "Create PDF from Web Page" created a perfect logical PDF  page structure in the page order of of the web site. In Acrobat 5 page 1  was the Main Topic Index Page, page 2 was the 1st Topic Subject Index  Page, page 3 was the 1st Subject Page, then the 2nd subject of the 1st  Topic, etc. until the Topic Subjects were exhausted after which the 2nd  Topic Subject Index Page and so it went on. As a result the bookmark  structure was sensible. The page order was as follows:
    Main Topic Contents
    Topic 1 Contents
    Subject 1 of Topic 1
    Subject 2 of Topic 1
    Topic N Contents
    Subject 1 of Topic N
    Subject 2 of Topic N
    Acrobat X (just purchased) produces a differently structured PDF from the same HTML pages. The order is:
    Main Topic Contents
    Topic 1 Contents
    Topic 2 Contents
    Topic N Contents
    Main Topic Contents (a second time)
    Subject 1 of Topic 1
    Subject 2 of Topic 1
    Subject N of Topic 1
    Subject 1 of Topic 2
    Subject 2 of Topic 2
    Subject N of Topic N
    Question: Is there any way I can get back with Acrobat X the same page order I got with Acrobat 5?
    Any help appreciated. The website is www.caliach.com/caliach/vision/help/index.html
    Chris

    Acrobat is using the underlying mark up of the rendered HTML page.
    This may or may not provide an adequate input to Acrobat when it is noodling out how and what to tag.
    I suspect you may find that, to obtain an adequately tagged PDF, you may have to capture the web page content with the create bookmarks and create tags options off.
    Once you have the PDF make working copies.
    Try letting Acrobat tag this already created PDF to see what happens.
    You may have to manually tag the PDF.
    n.b., The default read order for western language can be altered by user selections in the accesibility setup or by selection in the PDF page(s) Page Properties.
    Be well...

Maybe you are looking for