Carriage returns in OAException message

Hi,
I am creating an OAException message based on a String;
String exceptionMessage = "";
            if (pageContext.getParameter("OrgId").isEmpty()) {
                exceptionMessage = "Please select a valid Organisation";
            if (pageContext.getParameter("BankAccountNum").isEmpty()) {
                exceptionMessage =
                        exceptionMessage + "\nPlease select a valid Bank Account";
throw new OAException(exceptionMessage, OAException.ERROR);
Is it possible to have carriage returns in an exception message? I have added /n within the String, however it is not showing a carriage return when running it?
Kind Regards
Carl

If you are using message dictionary you can put carriage returns easily.(Whenever you are raising any error message, as per standards you should use message dictionary. You can change the message text without touching the java code).
Here are the steps
1) Create a message named XXX_YOUR_MESSAGE using Application Developer responsibility with your custom message. Make sure you set the application(as per below example I am using Human Resources) of the message properly as it needs to be referred in your java code
2) Just write below code where ever you want.
            OAException myOAException = new OAException("PER", "XXX_YOUR_MESSAGE", null, OAException.ERROR, null); //You can even use OAException.ERROR or OAException.WARNING etc. Just explore the class OAException for further options.
            throw myOAException;
So as per the message you set, it will display carriage returns. You can even use HTML tags I guess but I never tried.
If you want to set tokens in your message you can use below code
       MessageToken[] arrayOfMessageToken = new MessageToken[] { new MessageToken("MY_TOKEN", "My Token Text") };
       OAException myOAException = new OAException("PER", "XXX_YOUR_MESSAGE", arrayOfMessageToken, OAException.ERROR, null);
       throw myOAException;
Regards,
Peddi.

Similar Messages

  • Carriage Returns in Message Area

    Hi,
    I am using a hidden field "P6_SUBMIT_MESSAGE" to store a message that gets generated from a PL/SQL process. I then use the following trick to display that same message in the message area at the top of my page
    Process success message
    &P6_SUBMIT_MESSAGE.
    How can I get carriage returns into this message. I have tried adding chr(10), chr(13) and even '<'br'>' in the PL/SQL process but no luck. If I use chr(13) and my P6_SUBMIT_MESSAGE is a Textarea (not a Hidden field) I can see the desired results in that text area but even then, the carriage returns are not propagated to the message area at the top of the page.
    Thanks

    I know this is not my thread but i just wanted to say, thanks scott! this works! i'm having the same problem as Robert and tried every possible way like he did with the ch(10) and < b r >... but did not realize to change the page item type, i had it as text area also. Now i changed it to display text (does not save state) and used < b r > for carriage return... it works like a charm!
    Thanks again,
    Marilyn

  • Carriage returns are replaced by blank space in SOAP message.

    Hi,
    i am using SOAP request based website. i am using the weblogic webservices. when we sent any SOAP request to the server, if the SOAP xml message contains any carriage returns(new lines) are replaced by a single balnk space.
    i have a requirement where user can enter details in multiple lines. but by the time when it readched server, the SOAP xml message has changed. all the carriage returns are repalced by a blank space.
    Can you please help how to solve this issue.
    Thanks
    subba.

    What are your trying to accomplish?
    I'm thinking you are trying to get a several 'fields' together as a single 'string'. In which case I'd simply concat the fields together like
    SELECT a, b||' '||c ...
    to create a single string with "contents of b space contents of c"
    If you are trying to get one hundred and one blanks, of make a field 101 characters wide with blank padding, then you want to look in the SQL Reference manual for things like lpad, rpad and trim.

  • How to remove carriage returns in message mapping

    Hi Experts,
    I am getting carriage returns in one of the source field, i need to remove those carriage returns and i need to pass it to target field, can anyone suggest me how can i achieve this.

    Hello,
    Are you getting only CR or CR+LF (line feed) ?
    In this case - CRLF - you can use content conversion in your sender adapter:
    <recordset_structure>.fieldSeparator = 'nl'
    So in your receiver adapter you can replace any special char by 'nl' again.
    Check these links.
    http://help.sap.com/saphelp_nw04/helpdata/en/2c/181077dd7d6b4ea6a8029b20bf7e55/content.htm
    http://help.sap.com/saphelp_nwpi711/helpdata/en/44/686e687f2a6d12e10000000a1553f6/content.htm
    Regards,
    Diego Estanguini Gabriel

  • Help needed with Carriage Return in Unicode system

    Hi Experts,
    we have an issue with one of our programs regarding the carriage return that is used when creating a csv file. This issue has only came about because of the recent upgrade to ECC6.
    The main change to the program was the redefinition of the line feed variable.
    Existing statement was --> DATA: v_lf TYPE x VALUE '0D'.
    This was then replaced with
    New statement --> DATA: v_lf type c VALUE cl_abap_char_utilities=>cr_lf.
    Since this change has been implemented, the csv file that is created and sent on as an attachment via the function SO_NEW_DOCUMENT_ATT_SEND_API1 is now not displayed correctly.
    When looking at the attachment in trn SOST, a message is also displayed saying the file is not in a recognizable format when selecting the file to view.
    The hex value for cl_abap_char_utilities=>cr_lf is 000D000A and this seems to be causing the issue.
    I've also tried using Function FI_DME_CHARATERS as I only really want to use the CR. However, the hex value for this is 000D and not 0D.
    Is there any way of converting this to have a hex value of 0D?
    Thanks in advance,
    Chris

    HI,
    Sorry it is not the CONTENTS_TXT it is CONTENTS_BIN. Instead of CONTENTS_BIN you need to pass to CONTENTS_HEX
    Check my Code..i have used the CONTENTS_HEX instead of CONTENTS_BIN
    DATA: l_tab_lines TYPE i,
            l_string TYPE char300,
            l_line TYPE string.
      CONSTANTS : l_c_255(255)  TYPE c VALUE '255',
                  l_c_txt(3)    TYPE c VALUE 'TXT'.
      DATA: lt_reclist  TYPE STANDARD TABLE OF somlreci1,       "Recipients
            lt_objpack  TYPE STANDARD TABLE OF sopcklsti1,
            lt_objhead  TYPE STANDARD TABLE OF solisti1,
            lt_objtxt   TYPE STANDARD TABLE OF solisti1,     "Body of EMail
            lt_objbin   TYPE STANDARD TABLE OF solisti1."Attachment of EMail
      DATA: l_doc_chng TYPE sodocchgi1,     "attributes of document to send
            l_reclist  LIKE LINE OF lt_reclist,
            l_objpack  LIKE LINE OF lt_objpack,
            l_obj      LIKE LINE OF lt_objhead.
      DATA :
        l_hex LIKE solix,
        lt_contents_hex LIKE STANDARD TABLE OF solix ,
        conv TYPE REF TO cl_abap_conv_out_ce,
        l_buffer TYPE xstring,
        l_hexa(510) TYPE x.
    * Completing the recipient list
      l_reclist-receiver = p_emailid.
      l_reclist-express  = 'X'.
      l_reclist-rec_type = 'U'.
      APPEND l_reclist TO lt_reclist.
      CLEAR  l_reclist.
    * Body of Email Message
      APPEND l_obj TO lt_objtxt.   CLEAR l_obj.       " Blank line
      l_obj-line = '<html>'.
      APPEND l_obj TO lt_objtxt.   CLEAR l_obj.
      l_obj-line = '<body>'.
      APPEND l_obj TO lt_objtxt.   CLEAR l_obj.
      l_obj-line =  '<p><code>Hello,</p></code>'(t04).
      APPEND l_obj TO lt_objtxt.   CLEAR l_obj.
      l_obj-line = cl_abap_char_utilities=>newline.
      APPEND l_obj TO lt_objtxt.   CLEAR l_obj.       " Blank line
      CONCATENATE
       '<p><code>'(f01)
       'Please click the link to access the Confirmation Form.'(t01)
       'Kindly complete the same and return it to the HR contact 15 days' &
       ' prior to the date of confirmation of the employee.'(t02)
       '</p></code>'(f02) INTO l_obj-line SEPARATED BY space.
      APPEND l_obj TO lt_objtxt.   CLEAR l_obj.
      l_obj-line = cl_abap_char_utilities=>newline.
      APPEND l_obj TO lt_objtxt.   CLEAR l_obj.       " Blank line
      CONCATENATE '<a href="' text-l01 text-l02 '">'
             INTO l_obj-line.
      APPEND l_obj TO lt_objtxt.   CLEAR l_obj.
      CONCATENATE  '<p><code>'(f01)
                   'Link to Confirmation Forms'(034)
                   '</p></code>'(f02)
                   '</a>'
             INTO l_obj-line.
      APPEND l_obj TO lt_objtxt.   CLEAR l_obj.
      l_obj-line = cl_abap_char_utilities=>newline.
      APPEND l_obj TO lt_objtxt.   CLEAR l_obj.       " Blank line
      l_obj-line = '<p><code>The details of the employees ' &
                   'are as follows:</p></code>'(017).
      APPEND l_obj TO lt_objtxt.   CLEAR l_obj.
      l_obj-line = cl_abap_char_utilities=>newline.
      APPEND l_obj TO lt_objtxt.   CLEAR l_obj.       " Blank line
    * Table headings in the Mail Body
      l_obj-line =  '<table border="1">'.
      APPEND l_obj TO lt_objtxt.   CLEAR l_obj.
      l_obj-line =  '<tr>'.
      APPEND l_obj TO lt_objtxt.   CLEAR l_obj.
      l_obj-line =   '<th><p><code>Name</p></code></th>'(030).
      APPEND l_obj TO lt_objtxt.   CLEAR l_obj.
      l_obj-line =  '<th><p><code>Department</p></code></th>'(031).
      APPEND l_obj TO lt_objtxt.   CLEAR l_obj.
      l_obj-line =  '<th><p><code>DOJ</p></code></th>'(032).
      APPEND l_obj TO lt_objtxt.   CLEAR l_obj.
      l_obj-line =  '<th><p><code>Confirmation Date</p></code></th>'(033).
      APPEND l_obj TO lt_objtxt.   CLEAR l_obj.
      l_obj-line =  '</tr>'.
      APPEND l_obj TO lt_objtxt.   CLEAR l_obj.
    ** Body of Email Message
    * Email Attachment
    * Append headings
      CONCATENATE 'Employee No.'(002)
                  'Employee Group'(016)
                  'Employee Name'(001)
                  'Designation'(003)
                  'Joining Date'(004)
                  'Department'(005)
                  'Branch/Location'(006)
                  'Unit'(007)
                  'Confirmation Due'(008)
                  'Form sent on'(009)
                  'Form Return by'(010)
                  'Employee Group'(016)
                  'Qualification'(012)
                  'Trainee Category'(013)
                INTO l_string
           SEPARATED BY cl_abap_char_utilities=>horizontal_tab.
      APPEND l_string TO lt_objbin.
      CLEAR l_string.
      APPEND INITIAL LINE TO lt_objbin.
      LOOP AT p_emp_details INTO i_emp_details_line.
        CONCATENATE i_emp_details_line-pnalt
                    i_emp_details_line-egroup
                    i_emp_details_line-ename
                    i_emp_details_line-stext
                    i_emp_details_line-srvdt
                    i_emp_details_line-ltext
                    i_emp_details_line-pbtxt
                    i_emp_details_line-btrtx
                    i_emp_details_line-mndat
                    i_emp_details_line-fsdate
                    i_emp_details_line-frdate
                    i_emp_details_line-egroup
                    i_emp_details_line-ptext
                    i_emp_details_line-ftext
               INTO l_string
          SEPARATED BY cl_abap_char_utilities=>horizontal_tab.
        APPEND l_string TO lt_objbin.
        CLEAR l_string.
        l_obj-line =  '<tr>'.
        APPEND l_obj TO lt_objtxt.   CLEAR l_obj.
        CONCATENATE '<td>' '<p><code>'(f01)
                     i_emp_details_line-ename '</p></code>'(f02) '</td>'
                     INTO l_string.
        APPEND l_string TO lt_objtxt.   CLEAR l_string.
        CONCATENATE '<td>' '<p><code>'(f01)
                    i_emp_details_line-ltext '</p></code>'(f02) '</td>'
                    INTO l_string.
        APPEND l_string TO lt_objtxt.   CLEAR l_string.
        CONCATENATE '<td>' '<p><code>'(f01)
                    i_emp_details_line-srvdt '</p></code>'(f02) '</td>'
                    INTO l_string.
        APPEND l_string TO lt_objtxt.   CLEAR l_string.
        CONCATENATE '<td>' '<p><code>'(f01)
                    i_emp_details_line-mndat '</p></code>'(f02) '</td>'
                    INTO l_string.
        APPEND l_string TO lt_objtxt.   CLEAR l_string.
        l_obj-line =  '</tr>'.
        APPEND l_obj TO lt_objtxt.   CLEAR l_obj.
      ENDLOOP.
      l_obj-line = '  </table>'.
      APPEND l_obj TO lt_objtxt.   CLEAR l_obj.
      l_obj-line = '</body>'.
      APPEND l_obj TO lt_objtxt.   CLEAR l_obj.
      l_obj-line = '</html>'.
      APPEND l_obj TO lt_objtxt.   CLEAR l_obj.
      IF r_cprob EQ 'X'.
        l_string = 'Completion of probation List'(018).
      ELSE.
        l_string = 'Completion of extension of probation List'(035).
      ENDIF.
      APPEND l_string TO lt_objhead.
    * APPEND object_header.
      CALL FUNCTION 'SO_RAW_TO_RTF'
        TABLES
          objcont_old = lt_objbin
          objcont_new = lt_objbin.
      LOOP AT lt_objbin INTO l_line.
       conv = cl_abap_conv_out_ce=>create( encoding = 'UTF-8' endian = 'B').
        CALL METHOD conv->write( data = l_line ).
        l_buffer = conv->get_buffer( ).
        MOVE l_buffer TO l_hexa.
        MOVE l_hexa TO l_hex-line.
        APPEND l_hex TO lt_contents_hex.
      ENDLOOP.
    * File name for attachment
      CONCATENATE 'Completion of probation List'(018)
                   sy-datum '.XLS' INTO l_obj SEPARATED BY space.
      APPEND l_obj TO lt_objhead.
    * Email Body Details
      CLEAR l_tab_lines.
      DESCRIBE TABLE lt_objtxt LINES l_tab_lines.
      l_doc_chng-doc_size = ( l_tab_lines - 1 ) * 255 +
                              STRLEN( l_string ).  "size of doc in bytes
      l_doc_chng-obj_name = sy-repid.
      l_doc_chng-obj_langu = sy-langu.
      l_doc_chng-obj_descr = l_string.
      l_doc_chng-sensitivty = 'P'.          "  Send mail as a confidential
      l_objpack-head_start = 1.
      l_objpack-head_num   = 1.
      l_objpack-body_start = 1.
      l_objpack-body_num   = l_tab_lines.
      l_objpack-doc_type   = 'HTML'. "l_c_txt.
      APPEND l_objpack TO lt_objpack.
      CLEAR  l_objpack.
    * Email Attachment Details
      CLEAR l_tab_lines.
      DESCRIBE TABLE lt_objbin LINES l_tab_lines.
    * Creation of the entry for the compressed attachment
      l_objpack-transf_bin = 'X'.
      l_objpack-head_start = 1.
      l_objpack-head_num   = 1.
      l_objpack-body_start = 1.
      l_objpack-doc_type   = 'XLS'.
      l_objpack-obj_name   = l_obj.
      l_objpack-obj_descr  = l_obj.
      l_objpack-body_num   = l_tab_lines.
      l_objpack-doc_size   = l_tab_lines * l_c_255.
      APPEND l_objpack TO lt_objpack.
      CLEAR  l_objpack.
    * Send the document
      CALL FUNCTION 'SO_DOCUMENT_SEND_API1'
        EXPORTING
          document_data              = l_doc_chng
          put_in_outbox              = ' '
          commit_work                = 'X'
        TABLES
          packing_list               = lt_objpack
          object_header              = lt_objhead
    *      contents_bin               = lt_objbin
          contents_txt               = lt_objtxt
          contents_hex               = lt_contents_hex
          receivers                  = lt_reclist
        EXCEPTIONS
          too_many_receivers         = 1
          document_not_sent          = 2
          document_type_not_exist    = 3
          operation_no_authorization = 4
          parameter_error            = 5
          x_error                    = 6
          enqueue_error              = 7
          OTHERS                     = 8.

  • Text Formating/Carriage Return in VC

    Hi All,
    <b>Background:</b> we are using visual composer (VC) to display BI reports on portal. with that an additional functionality we are providing is commentary, i.e. user can save comments on report to view later.
    <b>Problem:</b> we are able to do the task but the problem is user can enter text but it is saved without any carriage returns and line feeds. On retrieval, it gives back all text in a single line and remove all paragraphic arrangements.
    I would really appreciate the earliest reply.
    Regards,
    Shabbar

    Hi basheer
    I thing u ,didnt get teh core issue
    Actually the issue is ,
    In VC , Text Editior. i type some message
    IN Text_Editor
                   HI BASHEER  [enter]
                   HOW ARE YOU [enter]
                   Good to See your Reply [enter]
    Here the issue is, while i pass this Text message to R/3 system
    the system will read the message as
    HI BASHEER  HOW ARE YOU Good to See your Reply
    Here SAP R3 doesnt know how to handle the [enter key ]carriage return...
    so it take all the message in single line. but i want them as the way i enter in text editor.
    i would like to know how to handle this in Backend...
    Thanks

  • Creating Wordpress blog entries with Safari 3 loses carriage returns

    Hi all,
    Ever since I started using Safari on Leopard, I've been losing all my carriage returns in my Wordpress entries. I don't know what's causing it, but Safari for Tiger, and Firefox 2.0.0.8 running on Tiger, Leopard, and Windows XP don't cause this to happen.
    Anyone have a clue as to why this is happening? The carriage returns are apparently getting erased somehow because where there should be a <p />, there's instead no space between the last period of a sentence and the first letter of the next.
    eg:
    This is the end of the line.This is the next line
    I'm not sure this is fixable by the users.
    Message was edited by: Michael Gaines

    Hi all,
    Same safari/wordpress problem here.
    And not the only one! (cookies, crashes)
    With the safari troubles I am now using camino more and more often. If it did copy formated text properly it would now be my first choice.
    However I do like safiris search/find a lot!!
    Detlev

  • I am losing my carriage returns when sending emails. How to keep? uses SMTP Email MIME Text Content-Type.vi

    I am losing my carriage returns when sending emails using the Internet email vi's.
    All carriage returns are stripped out and I get one long word wrapped paragraph.
    I want to avoid html.
    Ideally, using the vi's for rich text would be perfect, but a simple text message with carriage returns and line feeds in any font ok. 
    uses SMTP Email MIME Text Content-Type.vi
    i have tried text/plain, text/html, and mixed yada something

    You need to use Line feed constant and then use concatenate function.See the screen shot.
    Naqqash
    Attachments:
    Using Line feed.png ‏15 KB

  • Ignore carriage returns in select statement

    Within Oracle Report builder, I am using a select startment
    select descr
    from atable
    "descr" contains carriage returns at the end of the input ie people have enter 'enter' when inputting the data.
    how do write the select statement to ignore the carriage return 'enter' contain within "descr".
    Thanks

    SQL> SELECT 'aa' || chr(10) || 'bb' c FROM dual;
    C
    aa
    bb
    SQL> SELECT translate('aa' || chr(10) || 'bb', chr(10),' ') c FROM dual;
    C
    aa bb
    SQL> SELECT 'aa' || chr(13) || 'bb' c FROM dual;
    C
    aa
    bb
    SQL> SELECT translate('aa' || chr(13) || 'bb', chr(13),' ') c FROM dual;
    C
    aa bb
    SQL> "For Windows"
    Message was edited by:
    mennan
    Message was edited by:
    mennan

  • - How do you refer to an HTML carriage return in PHP?

    Someone sent me a php script that replaces foul language with
    kinder words
    in message board postings. I'd like the same script to weed
    out carriage
    returns, but we can't find the correct syntax for it.
    We're using :
    $patterns[0] = '/\n\r/';
    What's the correct syntax to use in this situation?
    Thanks!

    "David Powers" <[email protected]> wrote in message
    news:[email protected]...
    > Reese wrote:
    >> "David Powers" <[email protected]> wrote in
    message
    >>>
    >>>$patterns[0] = '/[\n\r]/';
    >>>
    >>>That searches for either a newline character or a
    carriage return.
    >>
    >> I'm told this will only work in Windows. That Macs
    would require a
    >> different string. Two, even.
    >>
    >> Anyone know if this is true?
    >
    > What you have been told is only partly correct. Windows
    uses a carriage
    > return followed by a newline character (\r\n). Macs just
    use a newline
    > character (\n).
    >
    > The pattern I have given you search for either a newline
    character or
    > carriage return. So if it's applied in such a way as to
    remove all
    > instances, it will work on both Windows and Mac. An
    alternative pattern
    > which would also work on both is this:
    >
    > $patterns[0] = '/\r?\n/';
    >
    > It looks for an optional carriage return followed by a
    newline character.
    > In other words, it still matches if there isn't a
    carriage return.
    The response of my know-it-all roumanian programmer with an
    ego the size of
    Texas to that was :
    http://www.regular-expressions.info/characters.html
    (bottom of the page)
    \r\n = windows
    \n = Linux (not Mac)
    \r = Mac
    http://www.regular-expressions.info/optional.html
    (tells you what the '?'
    does)
    (it means that the character before it can be there 0 or 1
    times)
    \r?\n = \n (Linux) or \r\n (windows)
    It leaves out the \r all alone, like added by the Mac.
    So, it will not delete the Mac new lines (might delete the
    Mac OSX ones
    since that one is passed on Linux, but not the older ones.)
    Now, you can contradict me all you want and have a busted
    code (then you
    will say it doesn't work because I made it wrong), or do it
    like I told you
    and get it working like it should.
    To this, I told him I would present this to you for a
    rebuttal, but not
    before asking him why he used only the '/\r?\n/' model as an
    example, and
    not the recommended '/[\n\r]/'. Something tells me he has no
    idea what [
    and ] do in this context, so he's avoiding it altogether --
    even though it
    may very well solve the problem on its own the way you claim
    it does.

  • Carriage Return in line Text for invoice line item.

    Hi,
    I am trying to create an non PO invoice through calling a BAPI "BAPI_INVOICE_CREATE"
    in which  i am passing all the required data . I have a field called "SGTXT" which is item text and i am passing this field
    which has maximum length of 50 char i just want to add a new line characters on to it. i.e want to support Carriage Return
    just want to know whether it can hold Carrige Return.
    I just tried by entering some Characters and hitting Enter the value which i am passing is simillar to
    itemtext
    "abcdabcdabcdabcd#
    abacdabcdabcd#
    abcdabcd"   My program is not able to parse this values hence landing into dump.
    How should i support this scenario.
    Thanks,

    Here is the dump.
    The termination occurred in the ABAP program "SAPLZIBA_SSP_READ_CSV" in
    "LINE_TO_CELL_ESC_SEP".                                                 
    The main program was "ZIBA_SSP_INVOICELOAD ".                                                                               
    The termination occurred in line 149 of the source code of the (Include) 
    program "LZIBA_SSP_READ_CSVF01"                                       
    of the source code of program "LZIBA_SSP_READ_CSVF01" (when calling the
    editor 1490).                                                           
            IF i_string CS l_pipe.                     
              l_stringlength = strlen( i_string ).     
              DO l_stringlength TIMES.                 
                REPLACE '  ' WITH '""' INTO i_string.  
                IF sy-subrc NE 0.                      
                  EXIT.                                
                ENDIF.                                 
              ENDDO.                                   
            ENDIF.                                     
            ASSIGN I_STRING(L_INT) TO <L_CELL>.        
            I_INTERN_VALUE = <L_CELL>.                 
          endif.                                       
          L_INT = L_INT + 2.                           
          I_SIC_INT = L_INT.                           
          I_STRING = I_STRING+L_INT.                   
        ELSEIF I_STRING CS C_ESC.                      
        letzte Celle                                 
          L_INT = SY-FDPOS.                            
          if l_int = 0.                                
            clear i_intern_value.                      
          else.                                        
            ASSIGN I_STRING(L_INT) TO <L_CELL>.        
            I_INTERN_VALUE = <L_CELL>.                 
          endif.                                       
          L_INT = L_INT + 1.                           
          I_SIC_INT = L_INT.                           
          I_STRING = I_STRING+L_INT.                   
          L_INT = STRLEN( I_STRING ).                  
          IF L_INT > 0 . MESSAGE X001(KX) . ENDIF.     
        ELSE.                                          
          MESSAGE X001(KX) . "was ist mit csv-Format   
        ENDIF.                                         
      ENDIF.                                           
    Can you let me knwo how should i put my condition to support CR .
    thanks,

  • How to include a carriage return in a TestStand string variable

    Is there anyway to add a carriage return to a TestStand string variable. I am sending commands to an instrument using the Rs232 serial bus and they need to be terminated with a carriage return ie "\r". I know you can creat a DLL and return the string variables to TestStand but is there a beter way ?

    Hi Paul,
    Sorry about that, just noticed I left off the "" in my last response.
    Try "\\r".  that should solve it.
    Regards
    Ray Farmer
    Message Edited by Ray Farmer on 09-15-2005 09:14 AM
    Regards
    Ray Farmer

  • How to put a carriage return in a String

    I am creating an error message on my class which is called and displayed on my JSP page.
    In my string I want it to do a Carriage return. I used a \n however it just ignores it when displayed in JSP using scriplets.
    Class declaration:
    -- Want this line to start on the next line..
    /** Used for the Error message for a text box. */
    private final String TEXTBOX_ERROR_MSG = "\n NOTE: The text box characters left count may not be accurate.";
    Used in getDBErrors() method:
    --errors is an array of error records displayed in the JSP
    if(this.notes != null && this.notes.length() > 4000)
         errors.add("Notes Tab: Notes section cannot be greater than 4000 characters." +  this.TEXTBOX_ERROR_MSG);
    JSP Page code:
    --Get the list of Errors from the class
    List pbrDBErrors = editBean.getDBErrors();     
    -- Display errors:
    for(int l=0; l<pbrDBErrors.size(); l++)
    %>
    <li>
        ----------- Display ERROR Message Here
        <%= (String)pbrDBErrors.get(l) %>
    </li>
    <%
    } %>++++++++++++++++++++++++++++++++++++++++++++++++++++++++
    All the code works great - Its just the TEXTBOX_ERROR_MSG is displayed on the same line as the rest of the message and it scrolls off the page.
    How do it get it to do a cariage return?? \n does not seem to work.
    Thanks

    I learned something new today.. I guess I can go home :)
    I am creating an error message on my class which is
    called and displayed on my JSP page.
    In my string I want it to do a Carriage return. I
    used a \n however it just ignores it when displayed
    in JSP using scriplets.
    Class declaration:
    -- Want this line to start on the next line..
    /** Used for the Error message for a text box.
    private final String TEXTBOX_ERROR_MSG = "\n NOTE:
    The text box characters left count may not be
    accurate.";
    Used in getDBErrors() method:
    --errors is an array of error records displayed in
    the JSP
    if(this.notes != null && this.notes.length() >
    4000)
    errors.add("Notes Tab: Notes section cannot be
    ot be greater than 4000 characters." +
    this.TEXTBOX_ERROR_MSG);
    JSP Page code:
    --Get the list of Errors from the class
    List pbrDBErrors = editBean.getDBErrors();     
    -- Display errors:
    for(int l=0; l<pbrDBErrors.size(); l++)
    %>
    <li>
    ----------- Display ERROR Message Here
    <%= (String)pbrDBErrors.get(l) %>
    </li>
    <%
    } %>++++++++++++++++++++++++++++++++++++++++++++++++++++++
    ++
    All the code works great - Its just the
    TEXTBOX_ERROR_MSG is displayed on the same line as
    the rest of the message and it scrolls off the page.
    How do it get it to do a cariage return?? \n does not
    seem to work.
    ThanksThanks the <br> worked great....

  • Receiver File channel for XML files: with carriage return

    Hi all,
    we are using a receiver FILE channel to generate an XML file that is sent to an external partner.
    The XML file looks good in a parser (IExplorer). But in fact there are not carriage return / line feeds between the XML tags
    of the XML payload in the file.
    Our partner now requires the XML file in a more vertical structure which means: for every tag a separate line (like it is displayed in a parser)
    Does anybody know a more general way to convert to a vertical XML structure (so with carriage return line feed).
    There is one entry in the SDN dealing with this topic but suggesting using an UDF. I think this is a very specific way.
    I don't think it is a good way to change/enhance the message mapping just because of a general formating change.
    Is it better to use an XSLT mapping as a second step in the interface mapping or a JAVA adapter module to convert ?
    any experiences? suggestions? examples?
    Thank you very much
    best regards
    Hans
    examples:
    original by XI receiver FILE adapter
    <?xml version="1.0" encoding="UTF-8"?>
    <MT_batchStatus><type>BS</type><header><message><messageSender>SENDER</messageSender><messageDate>20090723143720</messageDate> ... and so on
    required:
    <?xml version="1.0" encoding="UTF-8"?>
    <MT_batchStatus>
    <type>BS</type>
    <header>
    <message>
    <messageSender>SENDER</messageSender>
    <messageDate>20090723143720</messageDate>
    ... and so on

    >
    Hans Georg Walter wrote:
    > Is it better to use an XSLT mapping as a second step in the interface mapping or a JAVA adapter module to convert ?
    > any experiences? suggestions? examples?
    In such a case, the best is to write an generic XSLT or Java mapping that will attempt to do the pretty printing/formatting of the xml.
    The advantage of a generic one is that you can reuse the same class/jar for many other scenarios.
    so the flow will be as below in your interface mapping;
    1. your specific source to target mapping
    2. the generic formatting class

  • Carriage Returns and Tabs in XML element

    I have a number of carriage returns and tabs within an xml element. When I take that element I would like it to transform to html in which I am then displaying within a JEditorPane. However, when I do this it is one long string. I have tried the xml:space="preserve" within that element and this still is not working.
    Here is part of the xml with the carriage return line feeds. The element that I am talking about is called pseudocode. You can see it is displayed correctly below.
    Design Document XML : <?xml version="1.0" encoding="ISO-8859-1"?><design-doc><title-page><title>Testing Document</title><class-prepared-for>Lloyd</class-prepared-for><authors>Ben Garbers</authors><date-created>September 23, 2004</date-created></title-page><introduction text="This is the introduction. This is the introduction."/><class-definitions><class-definition class-name="ClassOne" visibility="public" class-complexity="not complex"><global-variables><variable visibility="public" name="VariableOne" object="String" comments="This is a String."/><variable visibility="public" name="VariableTwo" object="Integer" comments="This is an Integer."/></global-variables><methods><method name="MethodOne" synopsis="This will do some things." purpose="public" visibility="public"><input-parms><variable visibility="null" name="firstName" object="String" comments="null"/></input-parms><output-parms><variable visibility="null" name="lastName" object="String" comments="null"/></output-parms><local-variables><variable visibility="null" name="age" object="int" comments="null"/></local-variables><pseudocode xml:space="preserve">/* Ensure that player name exist in the system*/
    if (player =null)
         NullPlayerException;
              if (NOT (isPlayerNameExist(player)))
                   throw PlayerNameNotExistException;
              /* Ensure player name exist in the team already*/
              i ? 1;
              while (i <= length(mPlayers)) {
                   if (mPlayers.mPlayerName != playerName)
                        throw PlayerNameNotExistInTeamException;
    this.mPlayers ? this.mPlayers - player;</pseudocode>
    However, when I do the transformation I get the following with the pseudocode:
    /* Ensure that player name exist in the system*/if (player =null)     NullPlayerException;          if (NOT (isPlayerNameExist(player)))               throw PlayerNameNotExistException;          /* Ensure player name exist in the team already*/          i ? 1;          while (i <= length(mPlayers)) {               if (mPlayers[i].mPlayerName != playerName)                    throw PlayerNameNotExistInTeamException;}this.mPlayers ? this.mPlayers - player;
    It looks like it adds some spaces but no carriage returns or line feeds.
    My transformation code is the following:
         public ParseFile(String xmlString) {
              try {
              //Here we will load the correct style sheet for the message
              //that will be formatted.
              String urlString = "DesignDocument.xsl";
              URL url = this.getClass().getResource(urlString);
              System.out.println("URL to style sheet = " + url.toString());
              String styleSheetName = url.getFile();
              System.out.println("Style sheet name : " + styleSheetName);
              InputStream styleSheetInputStream = this.getClass().getResourceAsStream(urlString);
              //We will than load our SAXParerFactory and parse the message.
              SAXParserFactory SPFactory = SAXParserFactory.newInstance();
              SPFactory.setValidating(true);
              SAXParser sp = SPFactory.newSAXParser();
              XMLReader sax2parser = sp.getXMLReader();
              //NO Validation done on for this because we do NOT have a DTD.
              sax2parser.setFeature(
                   "http://xml.org/sax/features/validation",
                   false);
              sax2parser.setContentHandler(new FileContentHandler());
              //we create a character array of the length of the xml message String
              char[] messageCharacterArray =
                   new char[xmlString.length()];
              // we then put the xml string into the character array.
              messageCharacterArray = xmlString.toCharArray();
              // after this ew end up creating a CharArrayReader that will be used by the Sax
              // parser to parse the xml.
              CharArrayReader xmlCharArrayReader =
                   new CharArrayReader(messageCharacterArray);
              // we put the xml character array within the Input Source which will then be parsed
              // by the Sax2 parser.
              InputSource in = new InputSource(xmlCharArrayReader);
              // Use a Transformer for outputting the message into our formatted xml using
              // the stylesheet defined up in a messages own sxl stylesheet file.
              TransformerFactory tFactory = TransformerFactory.newInstance();
              tFactory.setURIResolver(new BasicURIResolver());
              StreamSource stylesource = new StreamSource(styleSheetInputStream);
              Transformer transformer = tFactory.newTransformer(stylesource);
    //          transformer.setOutputProperty(OutputKeys.INDENT, "yes");
    //          transformer.setOutputProperty("{http://xml.apache.org/xslt}indent-amount", "2");
    //          Properties properties = new Properties();
    //          properties.setProperty("indent", "yes");
    //          properties.setProperty("{http://xml.apache.org/xslt}indent-amount", "2");
    //          transformer.setOutputProperties(properties);
              // We will use a ByteArrayOutputStream to put our transformed xml.
              ByteArrayOutputStream bos = new ByteArrayOutputStream();
              StreamResult result = new StreamResult(bos);
              SAXSource source = new SAXSource(in);
              transformer.transform(source, result);
              String s = bos.toString();
              StringBuffer sb = new StringBuffer();
              //This will make sure the Version Line is not shown.
              BufferedReader br = new BufferedReader(new StringReader(s));
              String line = "";
              while ((line = br.readLine()) != null) {
                        sb.append(line);
              bos.close();
              br.close();
              formattedXmlString = sb.toString();
              System.out.println("--------------------------------");
              System.out.println(formattedXmlString);
              System.out.println("--------------------------------");
              } catch (Exception e) {
                   e.printStackTrace();
    I have been searching and trying to figure this out forever. Any help would be greatly appreciated. Bottom line is that I want carriage returns and tabs to work when transferring from the xml to xsl.

    I get the following line when adding the <pre> tags.
    /* Ensure that player name exist in the system*/if (player =null)     NullPlayerException;          if (NOT (isPlayerNameExist(player)))               throw PlayerNameNotExistException;          /* Ensure player name exist in the team already*/          i ? 1;          while (i <= length(mPlayers)) {               if (mPlayers[i].mPlayerName != playerName)                    throw PlayerNameNotExistInTeamException;}this.mPlayers ? this.mPlayers - player;
    On the screen this is shown on 1 line. It looks like the tabs are working correctly. However, the carriage return, line feeds do not seem to be working. The xml that is pushed into the transformation has the carriage returns and line feeds and is formatted correctly. There has to be something happening when the xsl takes the xml String. When I add <BR></BR> within the xml that doesn't seem to work either.
    I am really sumpted. If you could help DrClap I would really be appreciated.

Maybe you are looking for