Xml clob to file

We are using the following java to write a PL/SQL generated xml clobs to the file system. The help in this forum has been priceless.
At this point the xml filesare being produced but have character issues. I am guessing it is basic JAVA and yes I am new to JAVA.
1. Small clobs have trailing box characters (carraige returns)
2. Larger files have tags broken
Any input is appreciated.
Thanks
create or replace and compile java source named sjs.write_CLOB as
import java.io.*;
import java.sql.*;
import java.math.*;
import oracle.sql.*;
import oracle.jdbc.driver.*;
public class write_CLOB extends Object
public static void pass_str_array(oracle.sql.CLOB p_in,java.lang.String f_in)
throws java.sql.SQLException, IOException
File target = new File(f_in);
FileWriter fw = new FileWriter(target);
BufferedWriter out = new BufferedWriter(fw);
Reader is = p_in.getCharacterStream();
char buffer[] = new char[8192];
int length;
while( (length=is.read(buffer,0,8192)) != -1) {
out.write(buffer);
// out.newLine();
is.close();
fw.close();
/

We are still hung up on this. I tried implementing the code from STEVE'S XML book but still haven't resovled it.
The clob is being created via XSU see below. The new char[8192] appeasr to force the output file to 8K
with trailing characters on small clobs but adds a carraige return each 8K on larger ones.
As usual any input is appreciated from all. Doese anyone know of a good JAVA forum like this one?
Thanks
PROCEDURE BuildXml(v_return OUT INTEGER, v_message OUT VARCHAR2,string_in VARCHAR2,xml_CLOB OUT NOCOPY CLOB) IS
queryCtx DBMS_XMLquery.ctxType;
Buffer RAW(1024);
Amount BINARY_INTEGER := 1024;
Position INTEGER := 1;
sql_string VARCHAR2(2000) := string_in;
BEGIN
v_return := 1;
v_message := 'BuildXml completed succesfully.';
queryCtx := DBMS_XMLQuery.newContext(sql_string);
xml_CLOB := DBMS_XMLQuery.getXML(queryCtx);
DBMS_XMLQuery.closeContext(queryCtx);
EXCEPTION WHEN OTHERS THEN
v_return := 0;
v_message := 'BuildXml failed - '||SQLERRM;
END BuildXml;
PROCEDURE WriteCLOB(v_return OUT INTEGER, v_message OUT VARCHAR2,result IN OUT NOCOPY CLOB,TargetDirectory IN VARCHAR2,FileName IN VARCHAR2) IS
BEGIN
v_return := 1;
v_message := 'WriteCLOB completed succesfully.';
write_CLOB(result,REPLACE(TargetDirectory||'\'||FileName,'\','/'));
EXCEPTION WHEN OTHERS THEN
v_return := 0;
v_message := 'WriteCLOB failed - '||SQLERRM;
END WriteCLOB;
create or replace and compile java source named sjs.write_CLOB as
import java.io.*;
import java.sql.*;
import java.math.*;
import oracle.sql.*;
import oracle.jdbc.driver.*;
public class write_CLOB extends Object
public static void pass_str_array(oracle.sql.CLOB p_in,java.lang.String f_in)
throws java.sql.SQLException, IOException
File target = new File(f_in);
FileWriter fw = new FileWriter(target);
BufferedWriter out = new BufferedWriter(fw);
Reader is = p_in.getCharacterStream();
char buffer[] = new char[8192];
int length;
while( (length=is.read(buffer)) != -1) {
out.write(buffer);
is.close();
fw.close();
/

Similar Messages

  • Write XML CLOB 10 MB in size to an XML file

    Hi,
    I am trying to export a table into an XML file. Using various examples, I have learned that is really easy to handle objects smaller that 32767 bytes (characters).
    The problem is working with big chunks. My XML CLOB is just over 10 MB in size. I can easilly break it into smaller pieces but then I risk to write chr(10) in the middle of a XML Tag (which happened). I have an idea of finding a way around the problem but there are two issues:
    1. DBMS_LOB.instr function returns 0 if offset grows above appx 1100.
    2. I tried this in oreder to avid the limitation from item 1.:
    for c = 1..dbms_lob.getlength(CLOB) loop
    dbms_lob.read(CLOB,c,1,MyString);
    if MyString = chr(10) then
    utl_file.put_line(MyLine);
    MyLine := '';
    else
    MyLine := MyLine || MyString;
    end if;
    end loop;
    This way I generate perfect XML structure, and it takes about an hour of cpu time to create 2.3 MB file. I have tried to run ir for a big one, and it took just over 7 hours to get to 10.2 MB when I had shut it down.
    Does anybody has any suggestions?

    utl_file.put(...) will write the contents of the buffer without a newline
    utl_file.put_line will write the contents of the buffer plus a newline character. So, if you use utl_file.put_line(largebuffer) you will get a newline character after the buffer that may break tags.
    The following should produce the string:
    <tag>
    in a file:
    utl_file.put(fil, '<ta');
    utl_file.put(fil, 'g>');
    the following PL/SQL code will produce the string:
    <ta
    g>
    in a file:
    utl_file.put_line(fil, '<ta');
    utl_file.put_line(fil, 'g>');
    Are you saying that utl_file.put() is putting newlines in a file?
    This can be because you are not setting MAXLINESIZE for the file to 32767 (or >= your buffer size ) in fopen:
    UTL_FILE.FOPEN (
    location IN VARCHAR2,
    filename IN VARCHAR2,
    open_mode IN VARCHAR2,
    max_linesize IN BINARY_INTEGER) <<<<<<<<<<< set this to 32767 >>>>>>>>>>>>>>>>>>
    RETURN file_type;
    Larry

  • Need to update the xml clob-pls pls help!

    my xml is stored as blob, i can view,do string manipulation and churn out data etc...but now i have a request where i need to find some particualr node and modify its value.
    here is what i m doing now which works.
    select compressor2.blob_decompress2(xml_data) into l_blob
    from tablename where id=2008890;
    clob_data := utl2.blob2clob(l_blob);
    parser := xmlparser.newParser;
    xmlparser.parseClob(parser, clob_data);
    doc := xmlparser.getDocument(parser);
    nl := xmldom.getElementsByTagName(doc, '*');
    len := xmldom.getLength(nl);
    dbms_output.put_line('Length : ' || len);
    tag_name := 'Node Verson : ' || xmldom.getVersion(doc)|| '<br>';
    for counter in 0..len-1
    loop
    tag_name := '';
    node := xmldom.item(nl, counter);
    parent_node := xmldom.getParentNode(node);
    child_node := xmldom.getfirstchild(node);
    tag_name := 'Parent Name : ' || xmldom.getNodeName(parent_node) || '<br>';
    tag_name := tag_name || 'Node Name : ' || xmldom.getNodeName(node) || '<br>';
    IF xmldom.getNodeType(child_node) = xmldom.TEXT_NODE THEN
    tag_name := tag_name || 'Node Value : ' || xmldom.getNodeValue(child_node)|| '<br>';
    ELSE
    tag_name := tag_name || 'Node Value : Node has child.No Node value.' || '<br>';
    END IF;
    tag_name := tag_name || 'Node Type : '||xmldom.getNodeType(child_node) || '<br>';
    ele_name := xmldom.getDocumentElement(doc);
    child_nl := xmldom.getElementsByTagName(ele_name,'*');
    IF xmldom.isNull(doc) THEN
    htp.p('Document is null');
    ELSE
    htp.p(tag_name);
    END IF;
    end loop;
    b_blob := utl.clob2blob(tag_name);
    select compressor2.blob_compress2(b_blob) into b_blob2 from dual;
    insert into xupdate values (2008890,b_blob2);
    i still need to know how to update the xml clob... i want to know how to find the particular node and then modify the clob with the new value. rest i can update the table.
    pls pls help..on this.

    my oracle version.
    10.2.0.1.0
    i want to update here..
    <?xml version="1.0" encoding="utf-8"?>
    <TestData xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema">
         <Status>CompletedNormally</TestCompletionStatus>
         <ComputerName>DUILT10</ComputerName>
         <StartTime>2008-03-19T15:12:23</StartTime>
    ---Some more noded----
    <Parameters>
              <RangeMeasured>
                   <Name>PDissBol-5[C]</Name>
                   <Min>1.22</Min>
                   <Max>1.36</Max>
                   <Units>W</Units>
              </RangeMeasured>
              <TextMeasured>
                   <Name>ComputerName</Name>
                   <Value>DUILT10</Value>
              </TextMeasured>
              <RangeMeasured>
                   <Name>TrackError25[C]To-5[C]</Name>
                   <Min>0.031</Min>
                   <Max>0.041</Max>
                   <Units>dB</Units>
              </RangeMeasured>
              <RangeMeasured>
                   <Name>Power-5[C]</Name>
                   <Min>1.988</Min>
                   <Max>1.061</Max>
                   <Units>dBm</Units>
              </RangeMeasured>
    ---some more noded---
    </Parameters>
    </TestData>
    the file is huge.
    what i need to chang==>
    I 1st need to find this PDissBol-5[C] within the <Parameters> Node and then change its <Min> and <Max>
    and then update the table.
    pls pls suggest.

  • How to write a CLOB to file using UTF-8

    I'm new to java and I have the following problem.
    I need to write a CLOB to file using the UTF-8 characterset (I'm generating an xml file). My database characterset is WE8ISO8859P15.
    I've tried the code below but the resulting output fails validation in an xml editor due to an 'invalid character' error :
    create or replace
    and compile
    java source named "ClobUtil"
    as
    import java.io.*;
    import java.lang.*;
    import java.sql.*;
    import java.util.*;
    import oracle.jdbc.driver.*;
    import oracle.sql.*;
    public class ClobUtil {
    public static void save(CLOB clob, String filename) throws Exception
    Connection conn = DriverManager.getConnection("jdbc:oracle:kprb:");
    conn.setAutoCommit(false);
    InputStream is = clob.getCharacterStream();
    FileOutputStream os = new FileOutputStream(filename);
    int size = clob.getChunkSize();
    byte buffer[] = new byte[size];
    int length;
    while ((length = is.read(buffer, 0, size)) != -1) {
    os.write(buffer, 0, length);
    is.close();
    os.close();
    conn.close();
    I see that the getCharacterStream() method returns a Unicode character stream but how do I output this to file ??
    Thanks in advance

    File file = new File( "myfile.utf8" );
    FileOutputStream fos = new FileOutputStream( file );
    OutputStreamWriter osw = new
    OutputStreamWriter( fos, "UTF8" );
    Writer w = new BufferedWriter( osw );
    PrintWriter out = new PrintWriter( w );
    Or whatever you need. Note that this merely allows you to specify the encoding to be used in the output file, it does convert the encoding for you. I think in your case this will work since you already know the output stream will not contain the full range of UTF8 characters anyway.

  • Using xmldom.writeToClob to update xml clob corrupts clob

    We are storing an xml document in a clob field in the db. As part of a data check we need to parse the xml and possibly remove a node. I can do that, and check the results using 'xmldom.writeToBuffer'.
    When I try to write the data back to the db using 'xmldom.writeToClob' I get strange results. Data seems to be appended to the end of the clob and contains chr(13) characters at the end of each line.
    Also does anyone know if the existence of whitespace in the xml clob would cause a parse/search to be slower?
    I am new to xml and might be missing something fairly basic in the following code. Thanks in advance for any help.
    Here is some of the code:
    doc xmldom.DOMDocument;
    curNode xmldom.DOMNode;
    parentNode xmldom.DOMNode;
    theNodeList xmldom.DOMNodeList;
    str varchar2(4000);
    begin
    -- open xml_rec cursor (xml is the clob field opened for update)
    -- Loop through all item elements
    theNodeList := xmldom.getElementsByTagName(doc, 'item');
    for m in 0..xmldom.getLength(theNodeList)-1 loop
    curNode := xmldom.item(theNodeList,m);
    --perform a check and possibly delete the current node
    parentNode := xmldom.getParentNode(curNode);
    parentNode := xmldom.removechild(parentNode, curNode);
    xmldom.writeToBuffer(doc, str);
    --I check the results here and everything looks good
    xmldom.writeToClob(doc, xml_rec.xml);
    --When I check the clob the data is incorrect.
    null

    The next cod is a sample of the implementation xmldom.writeToClob used xmldom.DOMNode in the parameter of input.
    DECLARE
    XMLOut CLOB := EMPTY_CLOB();
    XMLIn Varchar2(2000);
    XSLPath Varchar2(2000);
    BEGIN
    DBMS_LOB.CREATETEMPORARY(XMLOut,TRUE); -- Give permit
    DBMS_LOB.OPEN (XMLOut, DBMS_LOB.LOB_READWRITE); --open the file of read and write
    XSLPath := '/users/gcardona/plantillas/report.xsl';
    GE_BSXMLCONVERT.createElementName('COLUMN');
    GE_BSXMLCONVERT.createElementAttribute('name', 'OUTXML');
    GE_BSXMLCONVERT.addElement();
    GE_BSXMLCONVERT.createElementName('table');
    GE_BSXMLCONVERT.createElementAttribute('name', 'X1');
    GE_BSXMLCONVERT.createElementAttribute('width', '100');
    GE_BSXMLCONVERT.addElement();
    XMLIn := GE_BSXMLCONVERT.toXML();
    XSLTranform(XMLIn, XSLPath, XMLOut);--XMLOut is a variable in out in the procedure,
    --here is where is return the file XML Process
    insert into in_prueba (ID,XML_CLOB) values (200, XMLOut);
    DBMS_LOB.CLOSE (XMLOut); -- Close File
    DBMS_LOB.FREETEMPORARY(XMLOut); --free memory
    GE_BSXMLCONVERT.clearMemory();
    commit;
    END;
    null

  • SEVERE: java.io.FileNotFoundException: ./config/jps-config.xml (No such file or directory)

    I am installing OIM/OAM in a cluster configuration using release 11.1.1.7.
    I looked at the EDG here:
    http://docs.oracle.com/cd/E28280_01/core.1111/e12035/toc.htm
    And its pointing me to the 11.1.1.5 version
    http://docs.oracle.com/cd/E21764_01/core.1111/e12035/toc.htm
    So that is the guide I am following.
    I am at this step:
    18.1.5.2 Integrating Oracle Access Manager with Oracle Identity Manager by Using idmConfigTool
    http://docs.oracle.com/cd/E21764_01/core.1111/e12035/wiring.htm#sthref356
    When I run the config tool I get SEVERE messages like this one:
    SEVERE: java.io.FileNotFoundException: ./config/jps-config.xml (No such file or directory)
    Any suggestions on how to fix this ?
    Please note that I can see jps-config.xml under the domain configuration in the fmwconfig directory.
    Here is the complete output
    Enter sso access gate password :
    Enter sso keystore jks password :
    Enter sso global passphrase :
    Enter mds db schema password :
    Enter idstore admin password :
    Enter admin server user password :
    ********* Seeding OAM Passwds in OIM *********
    Completed loading user inputs for - CSF Config
    Completed loading user inputs for - Dogwood Admin WLS
    Connecting to t3://admin.mycompany.com:7001
    Connection to domain runtime mbean server established
    Seeding credential :SSOAccessKey
    Seeding credential :SSOGlobalPP
    Seeding credential :SSOKeystoreKey
    ********* Activating OAM Notifications *********
    Completed loading user inputs for - MDS DB Config
    Jun 6, 2013 1:46:05 PM oracle.mds
    NOTIFICATION: PManager instance is created without multitenancy support as JVM flag "oracle.multitenant.enabled" is not set to enable multitenancy support.
    Jun 6, 2013 1:46:06 PM oracle.security.jps.internal.config.xml.XmlConfigurationFactory initDefaultConfiguration
    SEVERE: java.io.FileNotFoundException: ./config/jps-config.xml (No such file or directory)
    Jun 6, 2013 1:46:06 PM oracle.mds
    NOTIFICATION: Auditing is disabled for component MDS.
    Initialized MDS resources
    Jun 6, 2013 1:46:06 PM oracle.mds
    NOTIFICATION: PManager instance is created without multitenancy support as JVM flag "oracle.multitenant.enabled" is not set to enable multitenancy support.
    Jun 6, 2013 1:46:06 PM oracle.security.jps.internal.config.xml.XmlConfigurationFactory initDefaultConfiguration
    SEVERE: java.io.FileNotFoundException: ./config/jps-config.xml (No such file or directory)
    Jun 6, 2013 1:46:06 PM oracle.mds
    NOTIFICATION: Auditing is disabled for component MDS.
    Jun 6, 2013 1:46:07 PM oracle.mds
    NOTIFICATION: transfer operation started.
    Jun 6, 2013 1:46:08 PM oracle.mds
    NOTIFICATION: transfer is completed. Total number of documents successfully processed : 1, total number of documents failed : 0.
    Upload to DB completed
    Releasing all resources
    Notifications activated.
    ********* Seeding OAM Config in OIM *********
    Completed loading user inputs for - OAM Access Config
    Validated input values
    Initialized MDS resources
    Jun 6, 2013 1:46:08 PM oracle.mds
    NOTIFICATION: PManager instance is created without multitenancy support as JVM flag "oracle.multitenant.enabled" is not set to enable multitenancy support.
    Jun 6, 2013 1:46:08 PM oracle.security.jps.internal.config.xml.XmlConfigurationFactory initDefaultConfiguration
    SEVERE: java.io.FileNotFoundException: ./config/jps-config.xml (No such file or directory)
    Jun 6, 2013 1:46:08 PM oracle.mds
    NOTIFICATION: Auditing is disabled for component MDS.
    Jun 6, 2013 1:46:08 PM oracle.mds
    NOTIFICATION: transfer operation started.
    Jun 6, 2013 1:46:08 PM oracle.mds
    NOTIFICATION: transfer is completed. Total number of documents successfully processed : 1, total number of documents failed : 0.
    Download from DB completed
    Releasing all resources
    Updated /oracle/product/fmw/Oracle_IAM/server/oamMetadata/db/oim-config.xml
    Initialized MDS resources
    Jun 6, 2013 1:46:08 PM oracle.mds
    NOTIFICATION: PManager instance is created without multitenancy support as JVM flag "oracle.multitenant.enabled" is not set to enable multitenancy support.
    Jun 6, 2013 1:46:08 PM oracle.security.jps.internal.config.xml.XmlConfigurationFactory initDefaultConfiguration
    SEVERE: java.io.FileNotFoundException: ./config/jps-config.xml (No such file or directory)
    Jun 6, 2013 1:46:08 PM oracle.mds
    NOTIFICATION: Auditing is disabled for component MDS.
    Jun 6, 2013 1:46:08 PM oracle.mds
    NOTIFICATION: transfer operation started.
    Jun 6, 2013 1:46:09 PM oracle.mds
    NOTIFICATION: transfer is completed. Total number of documents successfully processed : 1, total number of documents failed : 0.
    Upload to DB completed
    Releasing all resources
    OAM configuration seeded. Please restart oim server.
    ********* Configuring Authenticators in OIM WLS *********
    Completed loading user inputs for - LDAP connection info
    Connecting to t3://admin.mycompany.com:7001
    Connection to domain runtime mbean server established
    Starting edit session
    Edit session started
    Connected to security realm.
    Validating provider configuration
    Validated desired authentication providers
    OAM Asserter already exists in the security realm
    OAMIDAsserter is already configured to support 11g webgate
    OIM Signature Authenticator already exists in the security realm
    A type of LDAP Authenticator already exists in the security realm. Please create authenticator manually if different LDAP provider is required.
    Control flags for authenticators set sucessfully
    Reordering of authenticators done sucessfully
    Saving the transaction
    Transaction saved
    Activating the changes
    Changes Activated. Edit session ended.
    Connection closed sucessfully
    The tool has completed its operation. Details have been logged to automation.log

    i found this task :
    JDev 11.1.1.1.0 + ADF+ BC4J application on Tomcat6

  • XML and XSD file to an internal table

    I had read a lot of thread  but i don't understand how to deal with xml/xsd in R3.
    I need someone that have a definite example for this escenary please.
    With OPEN DATASET took from the server XML and XSD file, and put it in two internal tables type string.
    What functions or method have to use, and how to use them, to charge the XML file in an internal table?
    This is an example of XML and XDS:
    XML
    AND CONTINUE
    Best Regards,

    I just tried to interpret your question, it was not obvious what you wanted.
    I guess what you mean is that you have defined (statically) a deep structure, and you want to decode the XML into it. That is called a transformation (transaction STRANS, statement CALL TRANSFORMATION). You have the choice between 2 transformation languages: XSLT and ST. Of course, it depends what release you are running.
    I advise you to play first with the ID transformation, to convert an ABAP deep structured data object into XML, so that you see what XML is generated, this one is called asXML. If you create your own transformation, when you call it, it will first convert automatically the data object to asXML, and the transformation has to do the rest of the job.
    You can do the opposite, i.e. converting from XML to a data object, according to the same principle (intermediate asXML).
    Well, there are lots of things to say, I recommend you to read articles and documentation on XSLT and ST (search on SDN).
    About XSD, it won't help (and I did never see any possibility to use it) to decode the XML, as you must anyway define the target data object statically (and there's no tool to generate the ABAP code of the data object definition from the XSD).
    Note that you may also use iXML libraries to parse the XML.
    Please tell us more.
    BR
    Sandra

  • Special character in XML causing the file to hit worng folder.

    I am facing program, while sending a data to a repository using SOAP XML. The file path which is needed has a special character and this is not getting identified at the target.
    here is the brief descriptio.
    1) We generate the PDF using the XML report in ERP.
    2) Using the same data, we generate SOAP XML file and send to a respoitory.
    3) Here using this SOAP XML, the PDF is generated and stored in a location which is sent in the file.
    we are sending the target path as "PO's from Customer" as below:
    '&lt;target_folder_path&gt;'||'/Documents/'||TO_CHAR(SYSDATE,'YYYY')||'/PO's from Customer'||'&lt;/target_folder_path&gt;';
    The path needed is '/Documents/2012/PO's from Customer' , but due the apostrophe, the file is hit /adadmin path.
    I have tried replcaing the special character by &apos; , but still no luck. If i remove the special characters, then the file is hitting correct path.
    But the requirement is to have '/Documents/2012/PO's from Customer' .
    Is there is a way this can be achived. Please advice.

    Is it as simple as using two single quotes between PO and s?
    '/PO''s from Customer'I can't tell from what you wrote how you are generating the value in the first place so if not correct provide more details related to whatever builds the path.

  • How can we display dynamic fields from a XML CLOB?

    Jdeveloper Version : 11.1.1.4.0 (11g)
    We are calling a database package.procedure from a page VO and it returns a result set. The result set is mainly a XML CLOB. Within XML CLOB, we have various sections which we need to parse and display those on JSF page. Couple of sections within XML are having dynamic fields which means the number of fields returned under that section may change depending upon data conditions. We need to find technical way of displaying those dynamic fields (field name and its data – both are part of XML).
    Please suggest how can this be achieved.
    Thanks

    <?xml version="1.0" encoding="UTF-8" ?>
    <nodes>
    <node>
    <category_id>3</category_id>
    <parent_id>2</parent_id>
    <name>Mobile</name>
    <is_active>1</is_active>
    <position>1</position>
    <level>2</level>
    <children>
    <node name="Nokia" category_id="6" parent_id="3" is_active="1" position="1" level="3">
    <node name="Nokia N79" category_id="7" parent_id="3" is_active="1" position="2" level="3" />
    <node name="Nokia N95" category_id="7" parent_id="3" is_active="1" position="2" level="3" />
    <node name="Nokia N97" category_id="7" parent_id="3" is_active="1" position="2" level="3" />
    </node>
    <node name="Samsung" category_id="7" parent_id="3" is_active="1" position="2" level="3">
    </node>
    </children>
    </node>
    <node>
    <category_id>4</category_id>
    <parent_id>2</parent_id>
    <name>Laptop</name>
    <is_active>1</is_active>
    <position>2</position>
    <level>2</level>
    <children></children>
    </node>
    <node>
    <category_id>5</category_id>
    <parent_id>2</parent_id>
    <name>Monitor</name>
    <is_active>1</is_active>
    <position>3</position>
    <level>2</level>
    <children></children>
    </node>
    <node>
    <category_id>8</category_id>
    <parent_id>2</parent_id>
    <name>Camera</name>
    <is_active>1</is_active>
    <position>4</position>
    <level>2</level>
    <children></children>
    </node>
    </nodes>
    Is this correct format to create dynamic menu?

  • Urgent, Help on conversion: xml to flat file

    Dear experts,
    Here is the scenario, XML FILE ->XI-> JMS
    In JMS recevier side, we use localejbs/AF_Modules/MessageTransformBean to convert xml to flat file.
    Transform.Class: com.sap.aii.messaging.adapter.Conversion
    Transform.ContentType: text/plain;charset=utf-8
    xml.conversionType: SimpleXML2Plain
    xml.fieldFixedLengths: 5,20,5,8
    When input source xml file contents are non-unicode, it works fine.
    But when the contents contain unicode characters such as Chinese word,  it works but with wrong length in the output flat file. It seems xi treat one Chinese word length is 1. Actually, one chinese word should take 2 bytes.
    My question is how to make XI handle unicode characters  with correct lengths while conversing to flat file.
    Thanks in advance.

    Jai Shankar
    Thanks for your response.
    I am already using the standard adapter modules provided by SAP:
    localejbs/AF_Modules/MessageTransformBean
    Transform.Class: com.sap.aii.messaging.adapter.Conversion
    My input file's encoding is UTF-8
    "You need to change the encoding scheme according to your input file" , do you mean change the output file's encoding or else?
    I can't find the article you mentioned: "Encoding schemes in XI", Would you please give me the link?
    Thanks a lot.

  • Facing problem in xml schema xsd file registration

    Hi,
    i am facing problem in xml schema xsd file registration when
    the number of column is more. It is showing persing error.
    if i am deleting few column from xsd file . It is working otherwise
    showing error. Is there any solution for that please suggest me.
    The Error is
    ORA-31011:XML parsing failed
    ORA_19202: Error occurred in XML processing
    LPX-00230 : (message vary time to time-like invalid tag ending etc.)
    Regards
    Manoranjan
    and thanks in advance

    Where is you XML coming from. Are you sure it's valid. If you are hard coding it as a SQL String constant are you hitting the 4k / 32K limit on the size of SQL / PL/SQL constant. Have you tried loading the content from a bfile..

  • Xml into war file

    How I can read an xml file with SAX or DOM into a war file?. I have WLS 6.1 SP4
    with WLI2.1 SP2.
    I can read a xml file, but when I create a war file, the aplication does not find
    the xml file. When it tries to find it, it looks on the path but not on the war
    which contains the xml file needed.
    This is the instruction given:
    String uri = "Menu.xml";
    DocumentBuilderFactory factory =DocumentBuilderFactory.newInstance();
    DocumentBuilder builder = factory.newDocumentBuilder();
    Document doc = builder.parse( uri );
    And the error message displayed is:
    File "file:///c:/bea/wli21/Memu.xml" not found
    Coments please!!
    Edy

    The error is calss org.xml.sa.SAXParseException: File "localhost:7001/Menu.xml"
    not found
    I change localhost by the correct IP.
    Tks.
    Edy
    "Karthik V" <[email protected]> wrote:
    What error message are you getting now?
    Can you produce the trace?
    Try using File or InputStream while Parsing.
    That will help you to narrow down the error.
    /k
    "Edith Barra" <[email protected]> wrote in message
    news:3ea594cc$[email protected]..
    The error persist.
    Help me!!
    Tks.
    Edy
    "Karthik V" <[email protected]> wrote:
    Try modifying your uri value to http://localhost:7001/Menu.xml
    Substitute correct port and docroot for the xml location.
    /k
    "Edith Barra" <[email protected]> wrote in message
    news:3ea572aa$[email protected]..
    How I can read an xml file with SAX or DOM into a war file?. I haveWLS
    6.1 SP4
    with WLI2.1 SP2.
    I can read a xml file, but when I create a war file, the aplicationdoes
    not find
    the xml file. When it tries to find it, it looks on the path but
    not
    on
    the war
    which contains the xml file needed.
    This is the instruction given:
    String uri = "Menu.xml";
    DocumentBuilderFactory factory =DocumentBuilderFactory.newInstance();
    DocumentBuilder builder = factory.newDocumentBuilder();
    Document doc = builder.parse( uri );
    And the error message displayed is:
    File "file:///c:/bea/wli21/Memu.xml" not found
    Coments please!!
    Edy

  • Sender file adapter - Can I use *.xml for the file name

    Hi Gurus,
    I have some interfaces where I need to pick the file from a directory. The name of the file will have Data<i>time stamp</i> as the naming convention. Can I use *.xml to pick up my files from this directory?
    The help.sap.com documentation says that we can use this naming convention.
    <b>
    &#9679;      File Name
    Specify the name of the file that you want to process. The name can contain placeholders (*, ? (placeholders for exactly one character)) so that you can select a list of files for processing.
    </b>
    I tried using *.xml for my file name in the communication channel, XI is not picking up this file.
    Please let me know if you have the solution.
    Thanks
    Kalyan

    Murthy,
    Thanks for the reply.
    I am using GuildFTP tool as my FTP server. In this tool, all the permissions were given for the file to pick up.
    The status of the file is good.
    Where in the file adapter configuration I have to select 'Read-only'?
    The file adapter is working perfect with the exact name of the file.
    Thanks
    Kalyan

  • Importing xml driven swf file -- is it asking for too much?

    I want to import an ActionScript3 / xml driven swf file into Catalist, but it only imports the swf file.
    I have placed all the external images and the xml file that calls them into the same folder as the swf and the catalist files, but the playback still does not work. It shows error messages when trying to run. Copying the files to Assets/ Media  or Images folders also makes no difference...There is no way in Catalyst to reconnect the xml to the swf either...
    Why can't Flash and Catalyst be more friendly? Will there be a better connectivity in the final version?

    Hello there,
    There are several reasons why this wouldn't work, especially during preview. I'd like to ask you a couple questions and have you try a couple things.
    1. What file path are you saving your project to, and what location did you copy the XML and image files to?
    2. Did you try publishing your project, and copying your additional files to the published locations?
    3. Did you try the same steps as above, only using the deploy-to-web version posted on your server? You would load the application by going to your web browser and typing something like: http://yourserverhere.com/.../deploy-to-web/Main.html.
    Let me know if any of those work. Because Catalyst cleans the space where preview files are kept, it would be difficult to have your scenario work during preview. However, you could probably get it to work in a published version.

  • Merging XML and XDP files

    Hello!
    I must build this POC for a client and the idea is merge XML and XPD files to feed a LiveCycle Output process and create PDF files.
    I've built the XDP files and the XML to start things, now I need to figure out how to create the process to merge them in Workbench.
    Is there any tutorial to help me with this task?
    Thank you for any ideas!
    Marcos

    Thank you guys for helping a beginner in trouble.
    I hope I will soon be able to help others here and help the comnunity.
    Right now, I've so much to learn!
    Thank you!
    Marcos, Brazil

Maybe you are looking for