Special character handling in XI

Hi,
I have a scenario wherein edifact files are passed through XI to partners .
The edifact input file contains special characters like ô which gets converted to Ã.This is causing the despatch advice to fail at the receiver end.
Can anyone suggest how such characters should be handled in XI ?
Thanks in advance.

You can use localejbs/Seeburger/CharsetConversion bean as well. And in the module config table, add teh following parameters
sourceEnc = UTF-8
targetEnc = ISO-8859-1(or what ever target encoding you want).
This is with the assumption that the data is going from SAP to a local(EDI)system via XI.
Use localejbs/CallBicXIRaBean after the character conversion in the Processing sequence.
cheers
danus
Edited by: Chidambaram Danus on May 8, 2008 3:27 PM

Similar Messages

  • Request.getParameter(): special character handling problem

    Hello, there:
    This should be an easy question for the gurus in here.
    I use a string attached to the url as the parameter string, which includes spaces. the system automatically converts them to %20, but when I receive them in my servlet using request.getParameter, a special character, Â appears; I couldn't proceed with it.
    I suppose this is a common problem but seems that I didn't find topics about it on this forum.
    So anyone can help? Any encoder/decoder APIs to handle it?
    Thanks a lot,
    Sway

    hi,
    escape can solve ur problem
    use js function to submit form like
    function subForm()
    var any_spcl_value ="kdfhjdf$%@#$% 2FGSFG @%@#%@# V";
    mainForm.action = "index.jsp?value="+ escape(any_spcl_value);
    mainForm.submit();
    and use request.getParameter("value");
    u ll get kdfhjdf$%@#$% 2FGSFG @%@#%@# V as it is.
    AE

  • Special Character Handling (&) in the payload content in PI 7.1

    Hello All,
    My Scenario is Idoc to File. I need to handle some special characters like "&" in  XML payload content in PI 7.1. I am receiving & character in the text field.
    eg:
    <RECORD>
       <BEGDA>20100901</BEGDA>
       <STAT1>A</STAT1>
       <NAME1>Grandview&MO CLMR</NAME1> 
      <PERL_SUB_AREA>0005</PERL_SUB_AREA>
    </RECORD>
    I created java mapping by using the blog: http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/9420. [original link is broken] [original link is broken] [original link is broken]
    "The code used in java mapping is converting & into &amp"
    Mapping is working fine in the test tab of Operation mapping and the message is successfully handling the record with & character(message with Chequered Flag).In the result tree view,it is showing 
    <PERL_TEXT>Grandview&MO CLMR</PERL_TEXT
    and in the source XML view
    <PERL_TEXT>"Grandview&ampMO CLMR"</PERL_TEXT>
    Issue:
    Now the record is written as
    <RECORD>
      <CUST_STATUS>A</CUST_STATUS>
      <COMPANY>1050</COMPANY>
      <PERL_AREA>1MOB</PERL_AREA>
      <PERL_TEXT>"Grandview&ampMO CLMR"</PERL_TEXT>
      <PERL_SUB_AREA>0005</PERL_SUB_AREA>
    </RECORD>
    Since & is coming as part of text, "it is converting & -> &amp" in the text field and the record is written in the file as
    "A|1050|1MOB|Grandview&ampMO  CLMR|0005 ....."
    While it should come as:
    A|1050|1MOB|Grandview&MO  CLMR|0005 .....
    Java mapping code used is as:
    import java.io.InputStream;
    import java.io.OutputStream;
    import java.util.Map;
    import com.sap.aii.mapping.api.StreamTransformation;
    public class HandleAmpersand implements StreamTransformation {
         public void setParameter (Map param) { }
         public void execute (InputStream in, OutputStream out) {
              try {
                   int read_data;
                        while ((read_data = in.read() ) != -1) {
                             if (read_data != '&') {
                                  out.write(read_data);
                             } else {                         
                             out.write("&amp;".getBytes());
                        out.flush();
         } catch (Exception e) {  }
    Also, i am using message mapping after java mapping in operation mapping
    Please guide me where it is going wrong.
    Thanks
    Shikha Jain
    Edited by: Jain Shikha on Jan 5, 2011 4:42 AM

    Hi Jain Shikha,
    I have faced similar issue in our production system.
    Our issue:-
    Sender system is sending :- DEKOR " OBS!
    Other middleware is converting it and sending to SAP PI as :- DEKOR &amp ;quot; OBS!
    Because of this, there is increase in size from 12 characters to 21 characters. We were getting error as the target side ABAP table has column width 15.
    Our solution:- Wrote a java mapping to convert &amp;quot; to u201C
    if (strContent.contains("&")) {
                        getTrace().addInfo("& is present");
                        strContent = strContent.replaceAll("&amp ;", "&");
                        strContent = strContent.replaceAll("&quot ;", "\"");
                        strContent = strContent.replaceAll("&apos ;", "\'");
                        strContent = strContent.replaceAll("&amp ;", "&");
                        strContent = strContent.replaceAll("&lt ;", "<");
                        strContent = strContent.replaceAll("&gt ;", ">");
    Note: - quote ("), apostrophe ('), ampersand (&), less than (<), greater than (>) are special characters in XML. They should not be present in data. http://www.w3.org/TR/REC-xml/
    Not Well formed XML:
    <Name>Raghuu2019s</Name>   <Name> Raghu & Vamsee </Name>
    Well formed XML:
    <Name>Raghu&apos;s</Name>   <Name>Raghu &amp; Vamsee</Name>
    Graphical mapping, XSLT, DOM, SAX need well formed XML as input, otherwise they give parser exception.
    Your solution:-
    I understand you are using a graphical mapping. Follow below steps
    Step 1: Convert u201CNot Well formed XMLu201D to u201CWell formed XMLu201D, using java mapping (which your doing already).
    Step 2: Use Graphical mapping for your transformation logic.
    Step 3: Again convert back u201CWell formed XMLu201D to u201CNot Well formed XMLu201D (As this what target system is expecting. Use below java mapping.
    Regards ,
    Raghu
    Edited by: Raghu Vamsee on Jan 6, 2011 1:45 PM
    Edited by: Raghu Vamsee on Jan 6, 2011 1:59 PM

  • Handle special character in mapping

    Hi Experts,
    I have requirement to handle special character in mapping.
    ö this tiny special charcter comes in I/O file and we cant avoid.
    Refering the given blog:  http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/9420 [original link is broken]
    FILE --- XI --- FILE where Source and target structures are same, using 1:1 mapping with FCC at both the side..
    Input/Output files consist of special charcters ö due to which getting error in mapping.
    Fatal Error: com.sap.engine.lib.xml.parser.ParserException: Invalid char #0x13(:main:, row:8237, col:22) com.sap.aii.utilxi.misc.api.BaseRuntimeException: Fatal Error: com.sap.engine.lib.xml.parser.ParserException: Invalid char #0x13(:main:, row:8237, col:22) at com.sap.aii.mappingtool.tf3.rt.xparser.MTSaxHandler.run(MTSaxHandler.java:157) at com.sap.aii.mappingtool.tf3.rt.xparser.XParser.run(XParser.java:73) at java.lang.Thread.run(Thread.java(Compiled Code))
    Do we required Java mapping? Is there any other way to acheive wtihout using Java mapping?
    How can we hadle in mapping?
    Sameer

    ö this tiny special charcter comes in I/O file and we cant avoid.
    Refering the given blog:  http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/9420 [original link is broken]
    What has an ö to do with an ampersand?
    Assign the correct encoding to the file adapter channel.

  • How to handle special character in SAP CRM

    Hi all,
    I am facing a problem on SAP CRM Web UI - Contact Creation - When a special character is inserted on address fields of Business
    Partner (e.g. ` ~ ^ etc.), the interface does not understand this character and changes it to a TRIANGLE on pressing enter key.
    Kindly guide as how to handle it or something is missing in terms of (note or patch).
    I am running on SAP CRM 7.0
    Thanks,
    Pradeep Singh Dhadwal

    Hi Pradeep.
    At the end of the day, a character is stored as a byte sequence on disk, and a code page defines the mapping between the byte sequence and any given character.The code page determines what character you can see and enter, therefore different code pages map different characters to the same byte sequence.
    I suggest you to first check if your system is a Unicode system by checking the System menu->Status option->Unicode system field. I'll assume it is.
    Then, please run report RSCP0018 (optionally also RSCPINST and then select Current NLS config pushbutton).
    These reports will show you the actual configuration of languages and code pages of your Application Server. Please check that the correct languages and code pages are configured. If you need to know more about code pages configuration, please check Note 42305, which explains pretty well the whole process.
    Kind regards, and good luck.
    Federico

  • Handle special character in JavaScript

    I am taking a special character "�" from database to display in a listbox using JavaScript. But in the listbox it is viewing as "?"...anybody can help me out for this.

    ö this tiny special charcter comes in I/O file and we cant avoid.
    Refering the given blog:  http://www.sdn.sap.com/irj/scn/weblogs?blog=/pub/wlg/9420 [original link is broken]
    What has an ö to do with an ampersand?
    Assign the correct encoding to the file adapter channel.

  • Unquoted special character error

    Am reading data from a file and parsing through it using StringTokenizer. I am putting the data into DB2 tables and therefore need to set the integer and fraction count for decimal numbers so they won't abend the program if they are over the DB2 setting. I am calling an internal method with the following line:
    pstmt_master.setDouble(23, formatDecimal(token, decForm));
    where token is the value to interpret and decForm is the pattern to apply, in this case it is:
    "###########0.####;-###########0.####"
    The method that is called is:
    public double formatDecimal(String numStr, String format) {
    NumberFormat nf = NumberFormat.getInstance(Locale.US);
         double intdbl = 0;
         if (nf instanceof DecimalFormat) {
              ParsePosition pos = new ParsePosition(0);
              nf.setMaximumIntegerDigits(12);
              nf.setMinimumIntegerDigits(0);
              nf.setMaximumFractionDigits(4);
              nf.setMinimumFractionDigits(0);
              DecimalFormat df = (DecimalFormat)nf;
              df.applyPattern(numStr);
              Double db = new Double(numStr);
              double dbl = db.doubleValue();
              BigDecimal bd = new BigDecimal(dbl);
              db = new Double(df.format(bd.doubleValue()));
              intdbl = db.doubleValue();               
         return intdbl;
    I am trimming the value (token), and for the purposes of debugging this problem have done a println on the value which is the number just before the error below. Can anyone offer any help as to why I am getting this error?
    By the way, this is not the first value passed through the method, it successfully handles about 10 values before abending on this value.
    51050
    java.lang.IllegalArgumentException: Unquoted special character '0' in pattern "51050"
         at java.text.DecimalFormat.applyPattern(DecimalFormat.java:1334)
         at java.text.DecimalFormat.applyPattern(DecimalFormat.java:1208)
         at JavaAgent.formatDecimal(JavaAgent.java:758)
         at JavaAgent.NotesMain(JavaAgent.java:225)
         at lotus.domino.AgentBase.runNotes(AgentBase.java:161)
         at lotus.domino.NotesThread.run(NotesThread.java:203)

    I'm thinking that this line:
    df.applyPattern(numStr);should read
    df.applyPattern(format);You appear to be passing the number as the pattern.
    Tim

  • How do I get Special character Euro symbol € to display ?

    Hi,
    How do I get the euro symbol € to display in Flash from
    PHP file created in DW ?. It does not display it properly. I have
    simplified the PHP code I have is:
    <?php
    $msgtoflash = "This is the Euro Symbol &#8364";
    print ("&Databaseinfo=$msgtoflash");
    ?>
    The &#8364 is a special character code for HTML.
    If I use the $ or £ symbols it works perfectly but not
    € ?
    Thanks,
    Paul

    maith wrote:
    > Im using Actionscript2. I had placed a query in Flash in
    "General
    > Discussions", before I came on the Dreamweaver Forum,
    but got no reply.
    The way to get the euro symbol to display in Flash is to use
    XML. I have
    tested this, and it works:
    euro.php
    <?php
    header('Content-type: text/xml');
    echo '<root>
    <elem>This is the euro symbol:
    &#8364;</elem>
    </root>';
    ?>
    ActionScript 2.0 to display the value of <elem> in a
    dynamic text field
    called myText:
    var myXML:XML = new XML();
    myXML.ignoreWhite = true;
    myXML.onLoad = handleLoad;
    myXML.load('
    http://localhost/test/euro.php');
    function handleLoad(success) {
    if (success) {
    var theRoot:XMLNode = this.firstChild;
    myText.text = theRoot.firstChild.firstChild.nodeValue;
    } else {
    myText.text = 'Not working :(';
    Handling XML in ActionScript 2.0 is like poking needles in
    your eyes,
    but it's the only way I have been able to get the euro symbol
    from an
    external source into a Flash movie.
    David Powers, Adobe Community Expert
    Author, "The Essential Guide to Dreamweaver CS3" (friends of
    ED)
    Author, "PHP Solutions" (friends of ED)
    http://foundationphp.com/

  • Special charecters handling while Converting XML string to DOM

    Hi,
    I am using the following approach for converting XML string to DOM, but due to Special characters like "&", I am getting Exceptions:
    String xmlString;
    DocumentBuilderFactory factory =
    DocumentBuilderFactory.newInstance();
    DocumentBuilder builder = factory.newDocumentBuilder();
    Document document = builder.parse(new InputSource(new StringReader(xmlString)));
    Can anyone please help me out on how to handle the Special characters in the above code.

    If the XML doesn't parse, then the XML must be invalid. Show a sample of such a special character in the XML data. Please use \ tags to post the actual XML content and any other code.                                                                                                                                                                                                                                                                                                                                                                                           

  • SharePoint key word query, how does the "Query Text" query special character in a query variable?

    I have a no code sandbox solution, in a content by search web part, I want to return pages from the library except the page I am visiting.
    I have 2 pages:
    Page A, the title is: Page title without special character
    Page B, the title is: Page title with special character "a b c d ..."
    And then I use Title<>{Page.Title} in the query text of the CSWP.
    While I visit Page A, the CSWP returns Page B, it works as expected.
    But while I visit Page B, the CSWP returns nothing, expected result should be Page A. I just consider, whether the special characters in the Title of Page B breaks the query text.
    I can not find similar topics in the forum, Does anyone have idea?
    Many thanks!

    Thank you for your feedback, Daniel.
    I have some updates, and found the root cause: if the field value contains special characters, the CSWP will not render the double quotation marks around the field value.
    View the page html source, and then find the text "QueryModification", you will see what happen:
    Query Text Input: Title<>{Page.Title}
    1. While the page title is "Test Page 1" (without special character), the rendered query text is
    Title<>\"Test Page 1\". It works as expected.
    2. While the page title is "Test-Page-1" (with special character "-", of cause we have more special characters on production), the rendered query text is
    Title<>Test-Page-1.  The double quotation marks are not rendered by the CSWP, so the query text are broken. It does not work as expected.
    If I make the query text as Title<>"{Page.Title}"
    1. While the page title is "Test Page 1", the rendered query text is
    Title<>\"\"Test Page 1\"\". It does NOT work since the
    quotes are duplicated (no sure why CSWP duplicates the quota mark),
    2. While the page title is "Test-Page-1", the rendered query text is
    Title<>\"Test-Page-1\".  Quotes are correct, but it does NOT work as expected still.
    The expected rendered query text (view from the html source) should be
    Title<>\"Test\\\-Page\\\-1\". (Here is test url: <a href="http://server/_api/search/query?querytext='Title<>"Test%5c%5c%5c-Page%5c%5c%5c-1"'&rowlimit=10">http://server/_api/search/query?querytext='Title<>"Test%5c%5c%5c-Page%5c%5c%5c-1"'&rowlimit=10)
    From the above information, I can say the CSWP not handle the special character correctly ("\" is not inserted before any special charactor).
    Is there any setting in CSWP can be used to resolve above problem?

  • & special character problem with parseXML() and parseEscapedXML().

    Hi,
    I'm having a problem to parse messages that has '&' character. According to metalink note 1340195.1 I tried to use parseXML instead of parseEscapedXML, still had same problem. Then added the following scope that replaces "&" with "& a m p ; a m p" (without spaces). Tried to use the java code as mentioned in the metalink note...
        <scope name="Replace_spec_char_scope">
          <faultHandlers>
            <catchAll>
              <sequence name="Error_Sequence_9_spec_char">
                <assign name="Assign_Error_Message_9">
                  <copy>
                    <from expression="ora:getInstanceId()"/>
                    <to variable="Error_Handler_Invoke_initiate_InputVariable"
                        part="payload"
                        query="/ns8:ErrorHandlerProcessRequest/ns8:instanceId"/>
                  </copy>
                  <copy>
                    <from expression="string('XXOGL.B106.001')"/>
                    <to variable="Error_Handler_Invoke_initiate_InputVariable"
                        part="payload"
                        query="/ns8:ErrorHandlerProcessRequest/ns8:errorCode"/>
                  </copy>
                  <copy>
                    <from expression="ora:getProcessId()"/>
                    <to variable="Error_Handler_Invoke_initiate_InputVariable"
                        part="payload"
                        query="/ns8:ErrorHandlerProcessRequest/ns8:process"/>
                  </copy>
                  <copy>
                    <from expression="string('Receive_Kund')"/>
                    <to variable="Error_Handler_Invoke_initiate_InputVariable"
                        part="payload"
                        query="/ns8:ErrorHandlerProcessRequest/ns8:activity"/>
                  </copy>
                  <copy>
                    <from expression="ora:getFaultAsString()"/>
                    <to variable="Error_Handler_Invoke_initiate_InputVariable"
                        part="payload"
                        query="/ns8:ErrorHandlerProcessRequest/ns8:errorPayload"/>
                  </copy>
                  <copy>
                    <from expression="bpws:getVariableData('Receive_Kund_Dequeue_InputVariable','Message','/ns6:Message/Kund')"/>
                    <to variable="Error_Handler_Invoke_initiate_InputVariable"
                        part="payload"
                        query="/ns8:ErrorHandlerProcessRequest/ns8:inputPayload"/>
                  </copy>
                </assign>
                <bpelx:exec name="Log_Error_9" language="java" version="1.5">
                  <![CDATA[OGLLogger logger = new OGLLogger("B106.bpel");                    
    try{                      
        Element errorDetails= (Element)getVariableData("Error_Handler_Invoke_initiate_InputVariable","payload","/ns8:ErrorHandlerProcessRequest/ns8:errorPayload");             
        logger.error("XXOGL.B106.001","InstanceID: "+getInstanceId()+" Error details: "+errorDetails.getFirstChild().getNodeValue());            
    }catch(BPELFault e){            
        addAuditTrailEntry(e);            
        logger.fatal("Failed to log error details for message XXOGL.B106.001",e);      
    }]]>
                </bpelx:exec>
                <terminate name="Terminate_1"/>
              </sequence>
            </catchAll>
          </faultHandlers>
          <bpelx:exec name="Replace_spec_char" language="java" version="1.5">
            <![CDATA[java.lang.String temp = (String) getVariableData("Receive_Kund_Dequeue_InputVariable");
          OGLLogger logger = new OGLLogger("B106.bpel");
    try{
    temp = temp.replaceAll("&", "&amp;amp");
    setVariableData("Receive_Kund_Dequeue_InputVariable", temp);
    }catch(BPELFault e){             
        addAuditTrailEntry(e);             
        logger.fatal("Failed to replace special character ",e);       
    }]]>
          </bpelx:exec>
        </scope>Now getting this error.
    <scope name="Replace_spec_char_scope">
    Replace_spec_char(faulted)
    [2012/05/18 11:16:28] "{http://schemas.oracle.com/bpel/extension}runtimeFault" has been thrown. less
    -<runtimeFault xmlns="http://schemas.oracle.com/bpel/extension">
    -<part name="code">
    <code>java.lang.ClassCastException
    </code>
    </part>
    -<part name="summary">
    <summary>com.collaxa.cube.engine.types.bpel.CXMessageVariable
    </summary>
    </part>
    -<part name="detail">
    <detail>
    java.lang.ClassCastException: com.collaxa.cube.engine.types.bpel.CXMessageVariable
         at bpel.xxogl_b106_kundinterface.ExecLetBxExe5.execute(ExecLetBxExe5.java:197)
         at com.collaxa.cube.engine.ext.wmp.BPELXExecWMP.__executeStatements(BPELXExecWMP.java:50)
         at com.collaxa.cube.engine.ext.wmp.BPELActivityWMP.perform(BPELActivityWMP.java:200)
         at com.collaxa.cube.engine.CubeEngine.performActivity(CubeEngine.java:4174)
         at com.collaxa.cube.engine.CubeEngine.handleWorkItem(CubeEngine.java:1680)
         at com.collaxa.cube.engine.dispatch.message.instance.PerformMessageHandler.handleLocal(PerformMessageHandler.java:75)
         at com.collaxa.cube.engine.dispatch.DispatchHelper.handleLocalMessage(DispatchHelper.java:238)
         at com.collaxa.cube.engine.dispatch.DispatchHelper.sendMemory(DispatchHelper.java:335)
         at com.collaxa.cube.engine.CubeEngine.endRequest(CubeEngine.java:6285)
         at com.collaxa.cube.engine.CubeEngine.createAndInvoke(CubeEngine.java:1111)
         at com.collaxa.cube.engine.delivery.DeliveryService.handleInvoke(DeliveryService.java:650)
         at com.collaxa.cube.engine.ejb.impl.CubeDeliveryBean.handleInvoke(CubeDeliveryBean.java:381)
         at sun.reflect.GeneratedMethodAccessor52.invoke(Unknown Source)
         at sun.reflect.DelegatingMethodAccessorImpl.invoke(DelegatingMethodAccessorImpl.java:25)
         at java.lang.reflect.Method.invoke(Method.java:585)
         at com.evermind.server.ejb.interceptor.joinpoint.EJBJoinPointImpl.invoke(EJBJoinPointImpl.java:35)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.JAASInterceptor$1.run(JAASInterceptor.java:31)
         at com.evermind.server.ThreadState.runAs(ThreadState.java:705)
         at com.evermind.server.ejb.interceptor.system.JAASInterceptor.invoke(JAASInterceptor.java:34)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.TxRequiredInterceptor.invoke(TxRequiredInterceptor.java:50)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.interceptor.system.DMSInterceptor.invoke(DMSInterceptor.java:52)
         at com.evermind.server.ejb.interceptor.InvocationContextImpl.proceed(InvocationContextImpl.java:119)
         at com.evermind.server.ejb.InvocationContextPool.invoke(InvocationContextPool.java:55)
         at com.evermind.server.ejb.StatelessSessionEJBObject.OC4J_invokeMethod(StatelessSessionEJBObject.java:87)
         at CubeDeliveryBean_LocalProxy_4bin6i8.handleInvoke(Unknown Source)
         at com.collaxa.cube.engine.dispatch.message.invoke.InvokeInstanceMessageHandler.handle(InvokeInstanceMessageHandler.java:37)
         at com.collaxa.cube.engine.dispatch.DispatchHelper.handleMessage(DispatchHelper.java:148)
         at com.collaxa.cube.engine.dispatch.BaseDispatchTask.run(BaseDispatchTask.java:58)
         at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:650)
         at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:675)
         at java.lang.Thread.run(Thread.java:595)
    </detail>
    </part>
    </runtimeFault>
    <catchAll>
    <sequence>
    Assign_Error_Message_9
    [2012/05/18 11:16:28] Updated variable "Error_Handler_Invoke_initiate_InputVariable" More...
    [2012/05/18 11:16:28] Updated variable "Error_Handler_Invoke_initiate_InputVariable" More...
    [2012/05/18 11:16:28] Updated variable "Error_Handler_Invoke_initiate_InputVariable" More...
    [2012/05/18 11:16:28] Updated variable "Error_Handler_Invoke_initiate_InputVariable" More...
    [2012/05/18 11:16:28] Updated variable "Error_Handler_Invoke_initiate_InputVariable" More...
    [2012/05/18 11:16:28] Updated variable "Error_Handler_Invoke_initiate_InputVariable" More...
    Log_Error_9
    [2012/05/18 11:16:28] bpelx:exec executed
    Terminate_1
    [2012/05/18 11:16:28] Instance terminated. Don't really understand what's wrong... Am I doing it incorrectly? Can anybody pls help!!
    Thanks in advance.
    Lisan

    Try to use parameters instead hardcoding values in the queries:
    select * from user where lower(username)=?;
    and don't forget to lower the value from java side as well ;-)

  • Special Character Restrictions for Native XML Driver

    Hi,
    I have found the following special character restrictions in the documentation:
    "Because they are handled specially by the Native XML driver, do not use the following special characters to define element types and attributes in your XML schema:u201C.u201D, u201C/u201D, u201C\u201D, u201C:u201D u201C@u201D."
    After checking the createad XML-Files in our projects that we will use for CR4E there is often a  u201C.u201D in the definition. Because this is delivered from third-party, we wish that the  u201C.u201D  will be enabled.
    In the moment we create the XSD-Files from the XML-File with XML2XSD.
    It is possible in the future?
    Best Regards
    Arnold Meier

    The changes aren't in XI Release 2, but in 2008.
    Do you still have Nha's XML data?  I edited Document_Policy, Policy_AllCoverages, Policy_Beneficiary to Document.Policy, Policy.AllCoverages, Policy.Beneficiary, then use the following code in CR4E 2.0:
    reportClientDocument reportClientDocument;
    ConnectionInfo connectionInfo;
    PropertyBag propertyBag;
    * Connect to the Java Print Engine and create a new document.
    reportClientDocument = new ReportClientDocument();
    reportClientDocument.setReportAppServer(ReportClientDocument.inprocConnectionString);
    reportClientDocument.newDocument();
    * Define connection to the XML and XSD files.
    propertyBag = new PropertyBag();
    propertyBag.put("Local XML File", "C:\\Documents and Settings\\tueda\\Desktop\\nha.xml");
    propertyBag.put("Local Schema File", "C:\\Documents and Settings\\tueda\\Desktop\\nha.xsd");
    propertyBag.put("Convert Multivalue to Table", Boolean.FALSE);
    propertyBag.put("Database DLL", "crdb_xml.dll");
    connectionInfo = new ConnectionInfo();
    connectionInfo.setAttributes(propertyBag);
    * Specify the dataset in the XML as a Table, and add to the report.
    Table table = new Table();
    table.setConnectionInfo(connectionInfo);
    table.setName("Document.Policy/Policy.Beneficiary");
    table.setAlias("Document_Policy/Policy_Beneficiary");
    reportClientDocument.getDatabaseController().addTable(table, null);
    * Save report to file C:\local_xml.rpt
    reportClientDocument.saveAs("nha_local_xml.rpt", "C:\\", ReportSaveAsOptions._overwriteExisting);
    reportClientDocument.close();
    Sincerely,
    Ted Ueda

  • To Remove a special character

    Hi All,i am transferring XML file to SAP ,so while doing this i am facing some problem while handling some special character 'micro'. Is there any replacment for micro in SAP?......please tell me..

    Hi Amruta,
    you can encode the string like this.
    encoded_string = cl_http_utility=>escape_html( source_string ).
    Cheers
    Graham

  • Parsing xml that contains special character

    this is my xml file.
    <?xml version="1.0" encoding="ISO-8859-1" ?>
    <grid_assessment>
         <chart>
              <range>5</range>
              <sharing_charging>
                   <score>3</score>
                   <label><![CDATA[SHARING &#38; CHARGING POLICIES]]></label>
    this is my java code.
              SAXParser parser = new SAXParser();
              parser.setContentHandler(this);
              parser.setErrorHandler(this);
              try
                   fis = new FileInputStream(xmlFile);
              catch(IOException ioe)
                   System.out.println( ioe.getMessage() );
              InputSource inputSource = new InputSource((InputStream)fis);
              try
                   parser.parse(inputSource);
              catch(SAXException saxe)
                   System.out.println( saxe.getMessage() );
              catch(IOException ioe)
                   System.out.println(ioe.getMessage());
    when i parse the xml file, i got an error message like this.
    org.xml.sax.SAXParseException: The entity name must immediately follow the '&' in the entity reference.Stopping after fatal error: The entity name must immediately follow the '&' in the entity reference.
    is there anybody who knows how to parse the xml file that contais special character?
    i tried "&#38;" instead of "&". but it didn't work...
    please help...
    thanks in advance...

    this is my java code.
              SAXParser parser = new SAXParser();If that is javax.xml.parsers.SAXParser then your code won't compile; i suspect you might be using some non-standard parser?
              parser.setContentHandler(this);
              parser.setErrorHandler(this);These methods are deprecated.
    when i parse the xml file, i got an error message like this.
    org.xml.sax.SAXParseException: The entity name must
    immediately follow the '&' in the entity
    reference.Stopping after fatal error: The entity name
    must immediately follow the '&' in the entity
    reference.I don't; maybe it's your parser. What parser are you using, and what version?
    is there anybody who knows how to parse the xml file
    that contais special character?There is nothing more you need to do; the codeimport javax.xml.parsers.*;
    import org.xml.sax.helpers.DefaultHandler;
    import org.xml.sax.*;
    import java.io.*;
    public class CeasarKim1Parser extends DefaultHandler {
      public static void main (String[] args) {
        try {
          SAXParser parser = SAXParserFactory.newInstance().newSAXParser();
          FileInputStream fis = null;
          fis = new FileInputStream(args[0]);
          InputSource inputSource = new InputSource((InputStream)fis);
          parser.parse(inputSource, new CeasarKim1Parser () );
        } catch(SAXException saxe) {
          saxe.printStackTrace();
        } catch(IOException ioe) {
          ioe.printStackTrace();
        } catch (ParserConfigurationException pce) {
          pce.printStackTrace();
      public void characters(char[] ch, int start, int length) {
        System.out.println(new String(ch, start, length));
    // similar implementations of the other content handler methods
    }which is basically a compilable and non-deprecated version of yours, with the file<?xml version="1.0" encoding="ISO-8859-1" ?>
    <grid_assessment>
      <chart>
        <range>5</range>
        <sharing_charging>
          <score>3</score>
          <label><![CDATA[SHARING & CHARGING POLICIES]]></label>
        </sharing_charging>
      </chart>
    </grid_assessment>does not generate any exceptions and parses the CDATA section correctly. That is using 1.4.1 and the default org.apache.crimson.jaxp.SAXParserImpl parser.
    Pete

  • Special Character Validation and Reset Focus

    Hi All,
    I have developed an Webdynpro JAVA Application which carries many input Fields.
    Client side Validations needs to be handled for Special Character Restriction for each of the Fields.
    Validation handled through OnEnter or OnChange Events of a Particular Field shows the exception but clicking other fields made the exception ignored.
    My Requirement goes this way.
    field1
    field2
    field n
    Validation Button
    On click of Validation button exception should be raised for all the Fields that has invalid Characters .
    It Should be displayed in Message Area( Using MessageManager) which should carry Field Name causing the Exception. On clicking the Exception it should take the Cursor the Erroneous Field.
    Kindly share the Methods of any standard Interface which does this job or customized methods if any?
    Best Regards,
    Suresh S

    try WDPermanentMessage

Maybe you are looking for