Excell encoding problem in java

I am trying to access an excell document and read it from my jsp page.
I am reading it but in my excell document there are some turkish characters. JSP page converting turkish characters to '?'.
I added Turkish encoding code (iso-8859-9) but it did nothing.
What must I do to read Turkish characters?
Below my code.
Connection c = null;
Statement stmnt = null;
try
Class.forName("sun.jdbc.odbc.JdbcOdbcDriver");
java.util.Properties prop = new java.util.Properties();
prop.put("charSet", "iso-8859-9");
prop.put("user", "");
prop.put("password","");
c = DriverManager.getConnection("jdbc:odbc:Driver={Microsoft Excel Driver (*.xls)};DBQ=" + "d:\\belgelerim/raporlar/network/mailler.xls",prop);
stmnt = c.createStatement();
String query = "Select * from [Sheet1$]" ;
ResultSet rs = stmnt.executeQuery( query );
FileOutputStream fout = new FileOutputStream ("C:/aktifsozlesmeler/log.txt",true);
//System.out.println( rs.getString(2) );
String ss ="";
while( rs.next()) {
String ad = rs.getString(1);
c.close();
catch( Exception e )
System.err.println( e );
}

I tryed it but nothing changed.
T tryed also this code
String TEL1 = new String(sheet.getCell(4, row).getContents().toString().trim().getBytes(), "ISO-8859-9");But again java reading turkish characters and inserting them to database like this "?".

Similar Messages

  • Export to Excel encoding problem

    I am using SQL Developer 1.1 Patch 1 (1.1.1.25) on Windows 2000 with Oracle 10g (on Linux).
    The database has NLS_CHARACTERSET EL8ISO8859P7
    (to support Greek characters)
    Although in SQL Developer the greek characters are displayed correctly in the Results and Script Output panes, when I export the results to Excel, the Greek characters are displayed as squares and other symbols:
    Example:
    The text: ΣΤΕΓΑΣΤΙΚΑ ΔΑΝΕΙΑ
    appears in Excel as: £¤•“‘£¤™š‘ ”‘•™‘
    (The version of the Excel I use is Microsoft Excel 2000)
    I have tried many different encodings (from Tools > Preferences > Environment > Encoding) such as cp1253, ISO-8959-7, utf-8, utf-16 but the result is always the same.
    The export as CSV has no problem with the greek characters.
    I also noticed that the changes to the encoding in Export Data > Export File Chooser seem to be lost (if I change it and then reselect Browse... to check it, the default from preferences is shown again).
    I also have the problem mentioned in another post, that when I export data to clipboard and do paste to Excel, a value such as java.io.BufferedOutputStream@8ff9a7 is only pasted.

    Hi!
    I am somewhat confused as to "the next release". I am exporting to excel from a portlet in a portal page and during the export process, characters that look like boxes are displayed in the title bar on the message dialog box that pops up. For me this is just a cosmetic porblem since all of my data exports exactly as it should, but the export process does not look clean when the little boxes are displayed. So I am interested in the release you are referencing and when it will be available. I am using Portal Reports Oracle 10g on Unix.

  • Exporting report to excel encoding problem..

    Hi All!
    A have a problem about encoding. I have a report and I export it into excel file. Everything is in a way. But unicode characters is not written in correct encoding. And I use encoding type everywhere "UTF-8"
    I use contentType as
    <%page contentType="application/vnd.ms-excel;charset=UTF-8" pageEncoding="UTF-8"%>
    and print out as
    StringBuffer sb = new StringBuffer();
    JspWriter writer = pageContext.getOut();
    writer.print(sb);
    ...Please help me. I couldn't solve this problem.

    Hi
    Actually i have been doing a lot of experimentation in this for past some days.
    The various alternatives are as follows:
    a> DESFORMAT=SPREADSHEET attribute in case of Oracle 10g Release 2, in this case the formatting will be maintained but the report will consist of empty cells and merged cells which is not required.
    b> in case of Oracle 9i, the following link may be helpful to you http://download-west.oracle.com/docs/cd/B14099_15/bi.1012/b13895/orbr_paptoexcel.htm#CIHFDJAJ . But in this case ,also the problem of empty cellas and merged cells cannot be removed.
    c> the option which i have preferred is to use the tool rep2excel which is easily downloadable from http://www.lv2000.com/. With some minor changes in the report formatting u will get the desired output. You may inclde the scripts given in the manual to include the software in your normal execution. The problem of empty cells and merged cells can also be removed.
    For any further queries of how to use the tool do feel free to ask

  • Jre 1.4.2_12 + java excel api problem.

    I got problem when i write a program to read chinese excel sheet with jre 1.4.2_12, chinese will encoding incorrect in java, but when I change jre version to jre 1.4.2_10 or jre 1.5.0 update 7 , everything s ok . any solution?
    p.s. jexcelapi 2.5.8

    I got problem when i write a program to read chinese
    excel sheet with jre 1.4.2_12, chinese will encoding
    incorrect in java, but when I change jre version to
    jre 1.4.2_10 or jre 1.5.0 update 7 , everything s ok
    . any solution?
    p.s. jexcelapi 2.5.8Hi Vencent,
    I am also seeing encoding problems with 1.4.2_12 and havent been able to find a solution. Did you find a solution to your problem? If so I'd appreciate it if you could post it.
    Thanks,
    Declan.

  • Java Database Encoding Problems

    Hi,
    I'm developing java under an AIX machine connecting to a DB2/400 database. The DB2/400 database contains records which are in Thai and English characters encoding.
    My Java program will have to extract these records and write them to a text file. My problem is, when I try to write the records in Thai characters, it doesn't get encoded right. Please advise me on what to do about my code. I hope anybody can help.
    Regards,
    Edgardolito

    Do you have a proof that your Java Strings contain
    the right characters?
    I think so. It's just that it's not encodedcorrectly
    when it goes to the text file.So if you have some kind of user interface and print
    this text, it shows both Thai and English correctly?The AIX machine can read and display Thai and English characters correctly. Actually, I'm developing a console application. No nifty user interfaces. I just flatly write the records to a text file.
    What's your platform's default encoding?My platform's (AIX) default encoding is inISO8859_1.
    It's locale is in English. I am not allowed tochange
    this setting.
    What encoding do you use when creating theFileReader?
    I'm not using file reader. I just use
    resultset.getString() to get the strings from the
    database and write it to the text file using a new
    BufferedWriter(new FileWriter(File));My mistake, I actually meant FileWriter. So if you
    don't state the encoding to be used, platform
    encoding will be used (in your case: ISO Latin 1,
    which of course has no support for Thai). The
    question is, what encoding should be used, as a mix
    of both languages can only be handled by Unicode
    encoding, e.g. UTF-8 or UTF-16. You could try to use
    an OutputStreamWriter based on a FileOutputStream and
    encapsulated into the BufferedWriter -- the
    OutputStreamWriter can be created for an encoding of
    your choice.please give me a sample code on how to do this... My code goes something like this:
    BuffereWriter bw = new BufferedWriter(FileWriter(new File("out.txt")));
    StringBuffer data = new StringBuffer("");
    rs = statement.executeQuery("SELECT thaiField FROM library.table");
    while(rs.next()) {
      data.append(new String(rs.getBytes(), "Cp838"));
      bw.write(data.toString());
      bw.newLine();
      bw.flush();
    bw.close();I hope you could help. Thanks a lot!

  • Problem with Java Stack- dev_w2 log mentioned.

    Hi everyone, I have a problem with Java Stack, I could not connect to XI home page,
    I am unable to login to j2ee engine using visual Administrator.
    Please go through the log below. And help me out to resolve this issue and let me know what could be the problem.
    trc file: "dev_w2", trc level: 1, release: "640"
    ACTIVE TRACE LEVEL           1
    ACTIVE TRACE COMPONENTS      all, M

    B  create_con (con_name=R/3)
    B  Loading DB library 'C:\usr\sap\SXI\SYS\exe\run\dboraslib.dll' ...
    B  Library 'C:\usr\sap\SXI\SYS\exe\run\dboraslib.dll' loaded
    B  Version of 'C:\usr\sap\SXI\SYS\exe\run\dboraslib.dll' is "640.00", patchlevel (0.39)
    B  New connection 0 created
    M systemid   560 (PC with Windows NT)
    M relno      6400
    M patchlevel 0
    M patchno    43
    M intno      20020600
    M make:      multithreaded, Unicode
    M pid        4140
    M
    M  ***LOG Q0Q=> tskh_init, WPStart (Workproc 2 4140) [dpxxdisp.c   1160]
    I  MtxInit: -2 0 0
    M  DpSysAdmExtCreate: ABAP is active
    M  DpSysAdmExtCreate: JAVA is not active
    M  DpShMCreate: sizeof(wp_adm)          13160     (1316)
    M  DpShMCreate: sizeof(tm_adm)          2780232     (13832)
    M  DpShMCreate: sizeof(wp_ca_adm)          24000     (80)
    M  DpShMCreate: sizeof(appc_ca_adm)     8000     (80)
    M  DpShMCreate: sizeof(comm_adm)          290000     (580)
    M  DpShMCreate: sizeof(vmc_adm)          0     (372)
    M  DpShMCreate: sizeof(wall_adm)          (38456/34360/64/184)
    M  DpShMCreate: SHM_DP_ADM_KEY          (addr: 060A0040, size: 3195320)
    M  DpShMCreate: allocated sys_adm at 060A0040
    M  DpShMCreate: allocated wp_adm at 060A1B58
    M  DpShMCreate: allocated tm_adm_list at 060A4EC0
    M  DpShMCreate: allocated tm_adm at 060A4EE8
    M  DpShMCreate: allocated wp_ca_adm at 0634BB30
    M  DpShMCreate: allocated appc_ca_adm at 063518F0
    M  DpShMCreate: allocated comm_adm_list at 06353830
    M  DpShMCreate: allocated comm_adm at 06353848
    M  DpShMCreate: allocated vmc_adm_list at 0639A518
    M  DpShMCreate: system runs without vmc_adm
    M  DpShMCreate: allocated ca_info at 0639A540
    M  DpShMCreate: allocated wall_adm at 0639A548
    X  EmInit: MmSetImplementation( 2 ).
    X  <ES> client 2 initializing ....
    X  <ES> InitFreeList
    X  Using implementation flat
    M  <EsNT> Memory Reset disabled as NT default
    X  ES initialized.

    M  calling db_connect ...
    C  Got ORACLE_HOME=c:\oracle\ora92 from environment
    C  Client NLS settings: AMERICAN_AMERICA.UTF8
    C  Logon as OPS$-user to get SAPSXI's password
    C  Connecting as /@SXI on connection 0 ...
    C  Attaching to DB Server SXI (con_hdl=0,svchp=04494404,svrhp=04495074)

    C  Starting user session (con_hdl=0,svchp=04494404,srvhp=04495074,usrhp=0449D8AC)

    C  Now I'm connected to ORACLE
    C  Got SAPSXI's password from OPS$-user
    C  Disconnecting from connection 0 ...
    C  Closing user session (con_hdl=0,svchp=04494404,usrhp=0449D8AC)
    C  Now I'm disconnected from ORACLE
    C  Connecting as SAPSXI/<pwd>@SXI on connection 0 ...
    C  Starting user session (con_hdl=0,svchp=04494404,srvhp=04495074,usrhp=0449D8AC)
    C  Now I'm connected to ORACLE
    C  Database NLS settings: AMERICAN_AMERICA.UTF8
    C  Database instance sxi is running on STARXI with ORACLE version 9.2.0.5.0 since 20081020
    B  Connection 0 opened
    B  Wp  Hdl ConName          ConId     ConState     TX  PRM RCT TIM MAX OPT Date     Time   DBHost         
    B  000 000 R/3              000000000 ACTIVE       NO  YES NO  000 255 255 20081020 123752 STARXI         
    M  db_connect o.k.
    I  MtxInit: 2 0 0
    M  SHM_PRES_BUF               (addr: 08230040, size: 4400128)
    M  SHM_ROLL_AREA          (addr: 62E40040, size: 77594624)
    M  SHM_PAGING_AREA          (addr: 08670040, size: 39845888)
    M  SHM_ROLL_ADM               (addr: 0AC80040, size: 775412)
    M  SHM_PAGING_ADM          (addr: 0AD40040, size: 525344)
    M  ThCreateNoBuffer          allocated 540152 bytes for 1000 entries at 0ADD0040
    M  ThCreateNoBuffer          index size: 3000 elems
    M  ThCreateVBAdm          allocated 12160 bytes (50 server) at 0AE60040
    X  EmInit: MmSetImplementation( 2 ).
    X  <ES> client 2 initializing ....
    X  Using implementation flat
    X  ES initialized.

    B  db_con_shm_ini:  WP_ID = 2, WP_CNT = 10
    B  dbtbxbuf: Buffer TABL  (addr: 103D00C8, size: 30000128, end: 1206C4C8)
    B  dbtbxbuf: Profile: max_objects = 5000, displace = 1, reorg = 1
    B  dbtbxbuf: request_unit = 2000, sync_reload = 5, inval_reload = 5
    B  dbtbxbuf: protect_shm = 0, force_checks = 0
    B  dbtbxbuf: tsize_retry = 14302848
    B  ***LOG BB0=> buffer TABL       started with length 30000128   bytes [dbtbxbuf#7 @ 15714] [dbtbxbuf1571 4]
    B  dbtbxbuf: Buffer TABLP (addr: 0E4000C8, size: 10240000, end: 0EDC40C8)
    B  dbtbxbuf: Profile: max_objects = 500, displace = 1, reorg = 1
    B  dbtbxbuf: request_unit = 2000, sync_reload = 5, inval_reload = 5
    B  dbtbxbuf: protect_shm = 0, force_checks = 0
    B  dbtbxbuf: tsize_retry = 5046656
    B  ***LOG BB0=> buffer TABLP      started with length 10240000   bytes [dbtbxbuf#7 @ 15714] [dbtbxbuf1571 4]
    B  dbtbxbuf: Reading TBX statistics:
    B  dbtbxbuf: 41 object entries precreated
    B  Layout of EIBUF buffer shared memory:
    B  0: 1 * 4 = 4
    B  1: 1 * 344 = 344
    B  2: 10 * 20 = 200
    B  3: 4001 * 48 = 192048
    B  4: 2000 * 232 = 464000
    B  5: 4001 * 4 = 16004
    B  6: 1 * 200 = 200
    B  7: 65 * 4 = 260
    B  8: 13754 * 256 = 3521024
    B  Tracing = 0, Shm Protection = 0, Force checks = 0
    B  dbexpbuf: Buffer EIBUF (addr: 0EDE00D0, size: 4194304, end: 0F1E00D0)
    B  ***LOG BB0=> buffer EIBUF      started with length 4096k      bytes [dbexpbuf#5 @ 2322] [dbexpbuf2322 ]
    B  Layout of ESM   buffer shared memory:
    B  0: 1 * 4 = 4
    B  1: 1 * 344 = 344
    B  2: 10 * 20 = 200
    B  3: 4001 * 48 = 192048
    B  4: 2000 * 232 = 464000
    B  5: 4001 * 4 = 16004
    B  6: 1 * 200 = 200
    B  7: 65 * 4 = 260
    B  8: 13754 * 256 = 3521024
    B  Tracing = 0, Shm Protection = 0, Force checks = 0
    B  dbexpbuf: Buffer ESM   (addr: 0F1F00D0, size: 4194304, end: 0F5F00D0)
    B  ***LOG BB0=> buffer ESM        started with length 4096k      bytes [dbexpbuf#5 @ 2322] [dbexpbuf2322 ]
    B  Layout of CUA   buffer shared memory:
    B  0: 1 * 4 = 4
    B  1: 1 * 344 = 344
    B  2: 10 * 20 = 200
    B  3: 3001 * 48 = 144048
    B  4: 1500 * 232 = 348000
    B  5: 3001 * 4 = 12004
    B  6: 1 * 200 = 200
    B  7: 193 * 4 = 772
    B  8: 5012 * 512 = 2566144
    B  Tracing = 0, Shm Protection = 0, Force checks = 0
    B  dbexpbuf: Buffer CUA   (addr: 0F6000D0, size: 3072000, end: 0F8EE0D0)
    B  ***LOG BB0=> buffer CUA        started with length 3000k      bytes [dbexpbuf#5 @ 2322] [dbexpbuf2322 ]
    B  Layout of OTR   buffer shared memory:
    B  0: 1 * 4 = 4
    B  1: 1 * 344 = 344
    B  2: 10 * 20 = 200
    B  3: 4001 * 48 = 192048
    B  4: 2000 * 232 = 464000
    B  5: 4001 * 4 = 16004
    B  6: 1 * 200 = 200
    B  7: 81 * 4 = 324
    B  8: 13754 * 256 = 3521024
    B  Tracing = 0, Shm Protection = 0, Force checks = 0
    B  dbexpbuf: Buffer OTR   (addr: 0F8F00D0, size: 4194304, end: 0FCF00D0)
    B  ***LOG BB0=> buffer OTR        started with length 4096k      bytes [dbexpbuf#5 @ 2322] [dbexpbuf2322 ]
    B  ***LOG BB0=> buffer CALE       started with length 500000     bytes [dbcalbuf#1 @ 2206] [dbcalbuf2206 ]
    B  dbtran INFO (init_connection '<DEFAULT>' [ORACLE:640.00]):
    B   max_blocking_factor =  15,  max_in_blocking_factor      =   5,
    B   min_blocking_factor =  10,  min_in_blocking_factor      =   5,
    B   prefer_union_all    =   0,  prefer_union_for_select_all =   0,
    B   prefer_fix_blocking =   0,  prefer_in_itab_opt          =   1,
    B   convert AVG         =   0,  alias table FUPD            =   0,
    B   escape_as_literal   =   1,  opt GE LE to BETWEEN        =   0,
    B   select *            =0x0f,  character encoding          = STD / <none>:-,
    B   use_hints           = abap->1, dbif->0x1, upto->2147483647, rule_in->0,
    B                         rule_fae->0, concat_fae->0, concat_fae_or->0

    M  PfHIndInitialize: memory=<0AEEC488>, header=<0AEEC488>, records=<0AEEC4D0>
    M  SecAudit(init_sel_info): init of SCSA completed: 02 slots used
    M  ***LOG AV6=> 02& [rsauwr1.c    1619]
    M  SsfSapSecin: automatic application server initialization for SAPSECULIB
    N  SsfSapSecin: Looking for PSE in database
    N  SsfPseLoad: started...(path=C:\usr\sap\SXI\DVEBMGS00\sec, AS=starxi, instanceid=00)

    N  SsfPseLoad: Downloading file C:\usr\sap\SXI\DVEBMGS00\sec\SAPSYS.pse (client:    , key: SYSPSE, len: 1078)
    N  SsfPseLoad: ended (1 of 1 sucessfully loaded, 1 checked...
    N  MskiCreateLogonTicketCache: Logon Ticket cache created in shared memory.
    N  MskiCreateLogonTicketCache: Logon Ticket cache pointer registered in shared memory.
    M  rdisp/reinitialize_code_page -> 0
    M  icm/accept_remote_trace_level -> 0
    M  rdisp/no_hooks_for_sqlbreak -> 0

    S  *** init spool environment
    S  initialize debug system
    T  Stack direction is downwards.
    T  debug control: prepare exclude for printer trace
    T  new memory block 121963B0
    S  spool kernel/ddic check: Ok
    S  using table TSP02FX for frontend printing
    S  1 spool work process(es) found
    S  frontend print via spool service enabled
    S  printer list size is 150
    S  printer type list size is 50
    S  queue size (profile)   = 300
    S  hostspool list size = 3000
    S  option list size is 30
    S      intervals: query=50, rescan=1800, global=300 info=120
    S      processing queue enabled
    S  creating spool memory service RSPO-RCLOCKS at 0FEB00A8
    S  doing lock recovery
    S  setting server cache root
    S  using server cache size 100 (prof=100)
    S  creating spool memory service RSPO-SERVERCACHE at 0FEB0370
    S    using messages for server info
    S  size of spec char cache entry: 297028 bytes (timeout 100 sec)
    S  size of open spool request entry: 2132 bytes
    S  immediate print option for implicitely closed spool requests is disabled


    A  -PXA--
    A  PXA INITIALIZATION
    A  PXA: Fragment Size too small: 73 MB, reducing # of fragments
    A  System page size: 4kb, admin_size: 5032kb.
    A  PXA allocated (address 67850040, size 150000K)
    A  System name
    A  ORACLE...........................SXI........20081004121019.....................................
    A  is used for RFC security.
    A  Sharedbuffer token: 41534050...33 (len: 111)====== 2b61c190857e36a8681ef39a...
    A  abap/pxa = shared protect gen_remote
    A  PXA INITIALIZATION FINISHED
    A  -PXA--

    A  ABAP ShmAdm initialized (addr=579F4000 leng=20955136 end=58DF0000)
    A  >> Shm MMADM area (addr=57E69DF0 leng=126176 end=57E88AD0)
    A  >> Shm MMDAT area (addr=57E89000 leng=16150528 end=58DF0000)
    A  RFC rfc/signon_error_log = -1
    A  RFC rfc/dump_connection_info = 0
    A  RFC rfc/dump_client_info = 0
    A  RFC rfc/cp_convert/ignore_error = 1
    A  RFC rfc/cp_convert/conversion_char = 23
    A  RFC rfc/wan_compress/threshold = 251
    A  RFC rfc/recorder_pcs not set, use defaule value: 2
    A  RFC rfc/delta_trc_level not set, use default value: 0
    A  RFC rfc/no_uuid_check not set, use default value: 0
    A  RFC Method> initialize RemObjDriver for ABAP Objects
    A  Hotpackage version: 9
    M  ThrCreateShObjects          allocated 10568 bytes at 0FFD0040
    M  ThVBStartUp: restart pending update requests

    M  ThVBAutoStart: update-auto-delete
    N  SsfSapSecin: putenv(SECUDIR=C:\usr\sap\SXI\DVEBMGS00\sec): ok
    N  SsfSapSecin: PSE C:\usr\sap\SXI\DVEBMGS00\sec\SAPSYS.pse found!

    N  =================================================
    N  === SSF INITIALIZATION:
    N  ===...SSF Security Toolkit name SAPSECULIB .
    N  ===...SSF trace level is 0 .
    N  ===...SSF library is C:\usr\sap\SXI\SYS\exe\run\sapsecu.dll .
    N  ===...SSF hash algorithm is SHA1 .
    N  ===...SSF symmetric encryption algorithm is DES-CBC .
    N  ===...sucessfully completed.
    N  =================================================
    N  MskiInitLogonTicketCacheHandle: Logon Ticket cache pointer retrieved from shared memory.
    N  MskiInitLogonTicketCacheHandle: Workprocess runs with Logon Ticket cache.
    W  =================================================
    W  === ipl_Init() called
    W    ITS Plugin: Path dw_gui
    W    ITS Plugin: Description ITS Plugin - ITS rendering DLL
    W    ITS Plugin: sizeof(SAP_UC) 2
    W    ITS Plugin: Release: 640, [6400.0.43.20020600]
    W    ITS Plugin: Int.version, [31]
    W    ITS Plugin: Feature set: [3]
    W    ===... Calling itsp_Init in external dll ===>
    W  === ipl_Init() returns 0, ITSPE_OK: OK
    W  =================================================
    M  MBUF info for hooks: MS component UP
    M  ThSetEnqName: set enqname by profile
    M  ThISetEnqname: enq name = >starxi_SXI_00                           <

    E  *************** EnqId_EN_ActionAtMsUpHook ***************
    E  Hook on upcoming Ms (with EnqSrv), get auth EnqId and check it locally
    E  Enqueue Info: enque/disable_replication = 2
    E  Enqueue Info: replication disabled


    E  *************** ObjShMem_CheckAuthoritativeEnqId ***************
    E  Checking authoritative EnqId from EnqSrv into ObjShMem
    E  ObjShMem_CheckAuthoritativeEnqId: ObjShMem ...
    E  EnqId.EnqTabCreaTime    = -999
    E  EnqId.RandomNumber      = -999
    E  ReqOrd.TimeInSecs       = -999
    E  ReqOrd.ReqNumberThisSec = -999
    E  ObjShMem_CheckAuthoritativeEnqId: ObjShMem ...
    E  EnqId.EnqTabCreaTime    = -999
    E  EnqId.RandomNumber      = -999
    E  ReqOrd.TimeInSecs       = -999
    E  ReqOrd.ReqNumberThisSec = -999
    E  ObjShMem_CheckAuthoritativeEnqId: EnqId is initial in ShMem
    E  ObjShMem_CheckAuthoritativeEnqId: Overwrite incoming auth EnqId, continue
    E  EnqId inscribed into initial ObjShMem: (ObjShMem_CheckAuthoritativeEnqId)
    E  -SHMEM--
    E  EnqId:          EnqTabCreaTime/RandomNumber    = 20.10.2008 12:38:10  1224486490 / 4140
    E  ReqOrd at Srv:  TimeInSecs/ReqNumberThisSec    = 20.10.2008 12:38:11  1224486491 / 1
    E  ReqOrd at Cli:  TimeInSecs/ReqNumberThisSec    = 20.10.2008 12:38:11  1224486491 / 1
    E  Status:         STATUS_OK
    E  -
    M  ThActivateServer: state = STARTING
    L  Begin of BtcSysStartRaise
    L  Raise event SAP_SYSTEM_START with parameter <starxi_SXI_00       >
    L  End of BtcSysStartRaise

    I  MPI<c>9#3 Peak buffer usage: 5 (@ 64 KB)

    M  *** WARNING => ThCheckReqInfo: req_info & DP_CANT_HANDLE_REQ
    M  return number range rc 12
    M  *** WARNING => ThNoGet: get from object (cli/obj/subobj/range = 000/ALAUTOUID /      /01) returned rc 12

    S  server @>SSRV:starxi_SXI_00@< appears or changes (state 1)
    B  table logging switched off for all clients

    S  server @>SSRV:starxi_SXI_00@< appears or changes (state 1)

    M  hostaddrlist return 0

    M  hostaddrlist return 0

    M  hostaddrlist return 0
    M  hostaddrlist return 0
    M  hostaddrlist return 0
    Regards,
    Varun.

    You probably made the same mistake as I did and added the tables manually to the "sample" database instead of the "sun-appserv-samples" database.
    marc

  • Problems with Java DOM Mapping

    Hi Experts,
    as part of my diploma-thesis I have to write a java DOM-Mapping, which mapps the following incoming message:
    <mt_MappingOUT>
    <set>
    <set_Element_01>...</set_Element_01>
    <set_Element_02>... </set_Element_02>
    <set_Element_03>... </set_Element_02>
    <set_Element_10>  </set_Element_10>
    </set>
    </mt_MappingOUT>
    to the following outgoinig message:
    <mt_MappingIN>
    <TABLE>
    <item>
    <item_FIELD_01>  </item_FIELD_01>
    <item_FIELD_10>  <item_FIELD_10>
    <i/tem>
    </TABLE>
    </mt_MappingIN>
    I am not a very experienced Java-Developer. You can see my code down there, which I tried to implement according to some bloggs; unfortunately the result is not what I want to have
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.OutputStream;
    import java.util.Map;
    import javax.xml.parsers.DocumentBuilder;
    import javax.xml.parsers.DocumentBuilderFactory;
    import javax.xml.parsers.ParserConfigurationException;
    import javax.xml.transform.Transformer;
    import javax.xml.transform.TransformerFactory;
    import javax.xml.transform.dom.DOMSource;
    import javax.xml.transform.stream.StreamResult;
    import org.w3c.dom.Document;
    import org.w3c.dom.Element;
    import org.w3c.dom.Node;
    import org.w3c.dom.NodeList;
    import org.w3c.dom.Text;
    import org.xml.sax.SAXException;
    import com.sap.aii.mapping.api.StreamTransformation;
    import com.sap.aii.mapping.api.StreamTransformationException;
    public class DOMMAPPING implements StreamTransformation{
         public static void main(String[] args) throws Exception
              try
                   FileInputStream fin =
                        new FileInputStream("C:/mt_MappingOut.xml");
                   FileOutputStream fout =
                        new FileOutputStream("C:/target.xml");
                   DOMMAPPING mapping = new DOMMAPPING();
                   mapping.execute(fin, fout);
              catch (Exception e)          {
                   e.printStackTrace();
    public void setParameter (Map param) {}
    public void execute (InputStream in, OutputStream out)
         throws com.sap.aii.mapping.api.StreamTransformationException {
              DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
              Document documentIn = null;
              DocumentBuilder builder = null;
              try {
                        builder = factory.newDocumentBuilder();
                   } catch (ParserConfigurationException e1) {
                        e1.printStackTrace();
              try {
                   Element itemNode = null;
                   NodeList[] list_f=new NodeList[10];
                   Element[] field=new Element[10];
                   documentIn = builder.parse(in);
                   Document documentOut = builder.newDocument();
                   Element rootNode = documentOut.createElementNS("urn:agrp:xi:geissseb","ns0:mt_MappingIn");
                   documentOut.appendChild(rootNode);
                   Element tableNode = documentOut.createElement("TABLE");
                   rootNode.appendChild(tableNode);
                   NodeList list_Set=documentIn.getElementsByTagName("set");
                   System.out.println(list_Set.getLength());
                   for(int j=1;j<10;j++){
                        list_f[j-1]=documentIn.getElementsByTagName("set_ELEMENT_01"+j);
                list_f[9]=documentIn.getElementsByTagName("set_ELEMENT_10");
                   //NodeList list_f01=documentIn.getElementsByTagName("f01");
                   for (int i=0;i<list_Set.getLength();i++)
                        itemNode=documentOut.createElement("item");
                        tableNode.appendChild(itemNode);
                        for(int k=0; k<10;k++){
                             Node f=list_f[k].item(i);
                             f=f.getFirstChild();
                             String str_f=f.getNodeValue();
                             Text text_f=documentOut.createTextNode(str_f);
                             field[k]=documentOut.createElement("item_FIELD_"(k1));
                             field[k].appendChild(text_f);
                             itemNode.appendChild(field[k]);
                   TransformerFactory tf = TransformerFactory.newInstance();
                   Transformer transform = tf.newTransformer();
                   transform.transform(new DOMSource(documentOut), new StreamResult(out));
                   } catch (SAXException e2) {
                        e2.printStackTrace();
                   } catch (IOException e2) {
                        e2.printStackTrace();
                   }catch (Throwable t) { throw new StreamTransformationException("error", t); }
    Unfortunately there seems to be at least one error in there because the result I get is just the following:
      <?xml version="1.0" encoding="UTF-8" standalone="no" ?>
    - <ns0:mt_MappingIn xmlns:ns0="urn:agrp:xi:geissseb">
      <TABLE />
      </ns0:mt_MappingIn>
    Below you will find my source message:
    <?xml version="1.0" encoding="UTF-8" ?>
    - <xsd:schema targetNamespace="urn:agrp:xi:geissseb" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns="urn:agrp:xi:geissseb">
      <xsd:element name="mt_MappingOut" type="dt_MappingOut" />
    - <xsd:complexType name="dt_MappingOut">
    - <xsd:annotation>
      <xsd:appinfo source="http://sap.com/xi/TextID">a7a28830bebf11dc81aa001a4b0af224</xsd:appinfo>
      </xsd:annotation>
    - <xsd:sequence>
    - <xsd:element name="Set">
    - <xsd:annotation>
      <xsd:appinfo source="http://sap.com/xi/TextID">0b366510aeda11dcb3bb00174205b856</xsd:appinfo>
      </xsd:annotation>
    - <xsd:complexType>
    - <xsd:sequence>
    - <xsd:element name="f01" type="xsd:string">
    - <xsd:annotation>
      <xsd:appinfo source="http://sap.com/xi/TextID">0b366511aeda11dcaf2600174205b856</xsd:appinfo>
      </xsd:annotation>
      </xsd:element>
    - <xsd:element name="set_ELEMENT_02" type="xsd:string">
    - <xsd:annotation>
      <xsd:appinfo source="http://sap.com/xi/TextID">0b366512aeda11dc84d400174205b856</xsd:appinfo>
      </xsd:annotation>
      </xsd:element>
    - <xsd:element name="set_ELEMENT_03" type="xsd:string">
    - <xsd:annotation>
      <xsd:appinfo source="http://sap.com/xi/TextID">0b366513aeda11dcbcab00174205b856</xsd:appinfo>
      </xsd:annotation>
      </xsd:element>
    - <xsd:element name="set_ELEMENT_04" type="xsd:string">
    - <xsd:annotation>
      <xsd:appinfo source="http://sap.com/xi/TextID">0b366514aeda11dc96a300174205b856</xsd:appinfo>
      </xsd:annotation>
      </xsd:element>
    - <xsd:element name="set_ELEMENT_05" type="xsd:string">
    - <xsd:annotation>
      <xsd:appinfo source="http://sap.com/xi/TextID">0b366515aeda11dca77700174205b856</xsd:appinfo>
      </xsd:annotation>
      </xsd:element>
    - <xsd:element name="set_ELEMENT_06" type="xsd:string">
    - <xsd:annotation>
      <xsd:appinfo source="http://sap.com/xi/TextID">0b366516aeda11dc8f7d00174205b856</xsd:appinfo>
      </xsd:annotation>
      </xsd:element>
    - <xsd:element name="set_ELEMENT_07" type="xsd:string">
    - <xsd:annotation>
      <xsd:appinfo source="http://sap.com/xi/TextID">0b366517aeda11dcc24b00174205b856</xsd:appinfo>
      </xsd:annotation>
      </xsd:element>
    - <xsd:element name="set_ELEMENT_08" type="xsd:string">
    - <xsd:annotation>
      <xsd:appinfo source="http://sap.com/xi/TextID">0b366518aeda11dc92cd00174205b856</xsd:appinfo>
      </xsd:annotation>
      </xsd:element>
    - <xsd:element name="set_ELEMENT_09" type="xsd:string">
    - <xsd:annotation>
      <xsd:appinfo source="http://sap.com/xi/TextID">0b366519aeda11dcc9b100174205b856</xsd:appinfo>
      </xsd:annotation>
      </xsd:element>
    - <xsd:element name="set_ELEMENT_10" type="xsd:string">
    - <xsd:annotation>
      <xsd:appinfo source="http://sap.com/xi/TextID">0b36651aaeda11dcc5a700174205b856</xsd:appinfo>
      </xsd:annotation>
      </xsd:element>
      </xsd:sequence>
      </xsd:complexType>
      </xsd:element>
      </xsd:sequence>
      </xsd:complexType>
      </xsd:schema>
    When I had problems withe Java SAX Mapping, I got great hints in the forum. So I hope you can help me out again...
    Cheers Sebastian

    Here you go.
    Code
    package com.sap.test;
    import java.io.FileInputStream;
    import java.io.FileOutputStream;
    import java.io.IOException;
    import java.io.InputStream;
    import java.io.OutputStream;
    import java.util.Map;
    import javax.xml.parsers.DocumentBuilder;
    import javax.xml.parsers.DocumentBuilderFactory;
    import javax.xml.parsers.ParserConfigurationException;
    import javax.xml.transform.Transformer;
    import javax.xml.transform.TransformerFactory;
    import javax.xml.transform.dom.DOMSource;
    import javax.xml.transform.stream.StreamResult;
    import org.apache.crimson.tree.TextNode;
    import org.w3c.dom.Document;
    import org.w3c.dom.Element;
    import org.w3c.dom.Node;
    import org.w3c.dom.NodeList;
    import org.w3c.dom.Text;
    import org.xml.sax.SAXException;
    import com.sap.aii.mapping.api.StreamTransformationException;
    public class DomTest {
         Document documentOut = null;
         public static void main(String[] args) throws Exception
         try
         FileInputStream fin =      new FileInputStream("test.xml");
         FileOutputStream fout = new FileOutputStream("test_out.xml");
         DomTest mapping = new DomTest();
         mapping.execute(fin, fout);
         catch (Exception e) {
         e.printStackTrace();
         public void setParameter (Map param) {}
         public void execute (InputStream in, OutputStream out)
         throws com.sap.aii.mapping.api.StreamTransformationException {
         DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
         Document documentIn = null;
         DocumentBuilder builder = null;
         try {
         builder = factory.newDocumentBuilder();
         } catch (ParserConfigurationException e1) {
         e1.printStackTrace();
         try {
         Element itemNode = null;
         //NodeList[] list_f=new NodeList10;
         //Element[] field=new Element10;
         documentIn = builder.parse(in);
         documentOut = builder.newDocument();
         Element rootNode = documentOut.createElementNS("urn:agrp:xi:geissseb","ns0:mt_MappingIn");
         rootNode.setAttribute("xmlns:ns0", "urn:agrp:xi:geissseb");
         documentOut.appendChild(rootNode);
         Element tableNode = documentOut.createElement("TABLE");
         rootNode.appendChild(tableNode);
         NodeList list_Set = documentIn.getElementsByTagName("set");
         System.out.println(list_Set.getLength());
         for(int j = 0 ; j < list_Set.getLength() ;j++){
              Element setNode = (Element)list_Set.item(j);
              NodeList children = setNode.getChildNodes();
              for(int index = 0; index < children.getLength(); index++)
                   Node child = children.item(index);
                   if (child instanceof Element) {
                        Element element = (Element) child;
                        if(element.getNodeName().startsWith("set_ELEMENT"))
                             createItemFeildNode(tableNode,element);
         //list_f[9]=documentIn.getElementsByTagName("set_ELEMENT_10");
    //     NodeList list_f01=documentIn.getElementsByTagName("f01");
         /*for (int i=0;i<list_Set.getLength();i++)
         itemNode=documentOut.createElement("item");
         tableNode.appendChild(itemNode);
         for(int k=0; k<10;k++){
         Node f=list_f[k].item(i);
         f=f.getFirstChild();
         String str_f=f.getNodeValue();
         Text text_f=documentOut.createTextNode(str_f);
         field[k]=documentOut.createElement("item_FIELD_"(k1));
         field[k].appendChild(text_f);
         itemNode.appendChild(field[k]);
         TransformerFactory tf = TransformerFactory.newInstance();
         Transformer transform = tf.newTransformer();
         transform.transform(new DOMSource(documentOut), new StreamResult(out));
         transform.transform(new DOMSource(documentOut), new StreamResult(System.out));
         } catch (SAXException e2) {
         e2.printStackTrace();
         } catch (IOException e2) {
         e2.printStackTrace();
         }catch (Throwable t) { throw new StreamTransformationException("error", t); }
         private void createItemFeildNode(Element root, Element element) {
              String inName = element.getNodeName();
              int temp = inName.lastIndexOf('_');
              if (temp == -1)
                   return;
              String index = inName.substring(temp+1);
              String nodeName = "Item_FIELD_" + index;
              String nodeVal = element.getFirstChild().getNodeValue();
              Element newElement = documentOut.createElement(nodeName);
              Text txtNode = documentOut.createTextNode(nodeVal);
              newElement.appendChild(txtNode);
              root.appendChild(newElement);          
    Input
    <?xml version="1.0" encoding="UTF-8" ?>
    <mt_MappingOut xmlns="urn:agrp:xi:geissseb" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="urn:agrp:xi:geissseb file:/D:/Eclipse/workspace/SDN/test.xsd">
    <set xmlns="">
      <set_ELEMENT_01>E1</set_ELEMENT_01>
      <set_ELEMENT_02>E2</set_ELEMENT_02>
      <set_ELEMENT_03>E3</set_ELEMENT_03>
      <set_ELEMENT_04>E4</set_ELEMENT_04>
      <set_ELEMENT_05>E5</set_ELEMENT_05>
      <set_ELEMENT_06>E6</set_ELEMENT_06>
      <set_ELEMENT_07>E7</set_ELEMENT_07>
      <set_ELEMENT_08>E8</set_ELEMENT_08>
      <set_ELEMENT_09>E9</set_ELEMENT_09>
      <set_ELEMENT_10>E10</set_ELEMENT_10>
      </set>
      </mt_MappingOut>
    Output
    <?xml version="1.0" encoding="UTF-8" ?>
    <ns0:mt_MappingIn xmlns:ns0="urn:agrp:xi:geissseb">
    <TABLE>
      <Item_FIELD_01>E1</Item_FIELD_01>
      <Item_FIELD_02>E2</Item_FIELD_02>
      <Item_FIELD_03>E3</Item_FIELD_03>
      <Item_FIELD_04>E4</Item_FIELD_04>
      <Item_FIELD_05>E5</Item_FIELD_05>
      <Item_FIELD_06>E6</Item_FIELD_06>
      <Item_FIELD_07>E7</Item_FIELD_07>
      <Item_FIELD_08>E8</Item_FIELD_08>
      <Item_FIELD_09>E9</Item_FIELD_09>
      <Item_FIELD_10>E10</Item_FIELD_10>
      </TABLE>
      </ns0:mt_MappingIn>

  • Encoding problem while reading binary data from MQ-series

    Dear all,
    we are running on 7.0 and we have an encoding problem while reading binary data from MQ-series. Because we are getting flat strings from queue we use module "Plain2ML" (MessageTransformBean) for wrapping xml-elements around the incoming data.
    The MQ-Series-Server is using CCSID 850, which we configured in connection parameters in communication channel (both parameters for Queuemanager CCSID and also CCSID of target).If there are special characters in the message (which HEX-values differ from codepage to codepage) we get errors in our adapter while executing, please see stack-trace for further analysis below.
    It seems to us that
    1. method ByteToCharUTF8.convert() expects UTF-8 in binary data
    2. Both CCSID parameters are not used anyway in JMS-adapter
    How can we solve this problem without changing anything on MQ-site?
    Here is the stack-trace:
    Catching com.sap.aii.af.mp.module.ModuleException: Transform: failed to execute the transformation: com.sap.aii.messaging.adapter.trans.TransformException: Error converting Message: 'sun.io.MalformedInputException'; nested exception caused by: sun.io.MalformedInputException caused by: com.sap.aii.messaging.adapter.trans.TransformException: Error converting Message: 'sun.io.MalformedInputException'; nested exception caused by: sun.io.MalformedInputException
        at com.sap.aii.af.modules.trans.MessageTransformBean.throwModuleException(MessageTransformBean.java:453)
        at com.sap.aii.af.modules.trans.MessageTransformBean.process(MessageTransformBean.java:387)
        at com.sap.aii.af.mp.module.ModuleLocalLocalObjectImpl0_0.process(ModuleLocalLocalObjectImpl0_0.java:103)
        at com.sap.aii.af.mp.ejb.ModuleProcessorBean.process(ModuleProcessorBean.java:292)
        at com.sap.aii.af.mp.processor.ModuleProcessorLocalLocalObjectImpl0_0.process(ModuleProcessorLocalLocalObjectImpl0_0.java:103)
        at com.sap.aii.adapter.jms.core.channel.filter.SendToModuleProcessorFilter.filter(SendToModuleProcessorFilter.java:84)
        at com.sap.aii.adapter.jms.core.channel.filter.MessageFilterContextImpl.callNext(MessageFilterContextImpl.java:195)
        at com.sap.aii.adapter.jms.core.channel.filter.ConvertBinaryToXiMessageFilter.filter(ConvertBinaryToXiMessageFilter.java:304)
        at com.sap.aii.adapter.jms.core.channel.filter.MessageFilterContextImpl.callNext(MessageFilterContextImpl.java:195)
        at com.sap.aii.adapter.jms.core.channel.filter.ConvertJmsMessageToBinaryFilter.filter(ConvertJmsMessageToBinaryFilter.java:112)
        at com.sap.aii.adapter.jms.core.channel.filter.MessageFilterContextImpl.callNext(MessageFilterContextImpl.java:195)
        at com.sap.aii.adapter.jms.core.channel.filter.InboundDuplicateCheckFilter.filter(InboundDuplicateCheckFilter.java:87)
        at com.sap.aii.adapter.jms.core.channel.filter.MessageFilterContextImpl.callNext(MessageFilterContextImpl.java:195)
        at com.sap.aii.adapter.jms.core.channel.filter.TxManagerFilter.filterSend(TxManagerFilter.java:123)
        at com.sap.aii.adapter.jms.core.channel.filter.TxManagerFilter.filter(TxManagerFilter.java:59)
        at com.sap.aii.adapter.jms.core.channel.filter.MessageFilterContextImpl.callNext(MessageFilterContextImpl.java:195)
        at com.sap.aii.adapter.jms.core.channel.filter.DynamicConfigurationFilter.filter(DynamicConfigurationFilter.java:72)
        at com.sap.aii.adapter.jms.core.channel.filter.MessageFilterContextImpl.callNext(MessageFilterContextImpl.java:195)
        at com.sap.aii.adapter.jms.core.channel.filter.PmiAgentFilter.filter(PmiAgentFilter.java:66)
        at com.sap.aii.adapter.jms.core.channel.filter.MessageFilterContextImpl.callNext(MessageFilterContextImpl.java:195)
        at com.sap.aii.adapter.jms.core.channel.filter.InboundCorrelationFilter.filter(InboundCorrelationFilter.java:60)
        at com.sap.aii.adapter.jms.core.channel.filter.MessageFilterContextImpl.callNext(MessageFilterContextImpl.java:195)
        at com.sap.aii.adapter.jms.core.channel.filter.JmsHeadersProfileFilter.filter(JmsHeadersProfileFilter.java:59)
        at com.sap.aii.adapter.jms.core.channel.filter.MessageFilterContextImpl.callNext(MessageFilterContextImpl.java:195)
        at com.sap.aii.adapter.jms.core.channel.filter.MessageInvocationsFilter.filter(MessageInvocationsFilter.java:89)
        at com.sap.aii.adapter.jms.core.channel.filter.MessageFilterContextImpl.callNext(MessageFilterContextImpl.java:195)
        at com.sap.aii.adapter.jms.core.channel.filter.JarmMonitorFilter.filter(JarmMonitorFilter.java:57)
        at com.sap.aii.adapter.jms.core.channel.filter.MessageFilterContextImpl.callNext(MessageFilterContextImpl.java:195)
        at com.sap.aii.adapter.jms.core.channel.filter.ThreadNamingFilter.filter(ThreadNamingFilter.java:62)
        at com.sap.aii.adapter.jms.core.channel.filter.MessageFilterContextImpl.callNext(MessageFilterContextImpl.java:195)
        at com.sap.aii.adapter.jms.core.channel.SenderChannelImpl.doReceive(SenderChannelImpl.java:263)
        at com.sap.aii.adapter.jms.core.channel.ChannelImpl.receive(ChannelImpl.java:437)
        at com.sap.aii.adapter.jms.core.connector.MessageListenerImpl.onMessage(MessageListenerImpl.java:36)
        at com.ibm.mq.jms.MQMessageConsumer$FacadeMessageListener.onMessage(MQMessageConsumer.java:399)
        at com.ibm.msg.client.jms.internal.JmsMessageConsumerImpl$JmsProviderMessageListener.onMessage(JmsMessageConsumerImpl.java:904)
        at com.ibm.msg.client.wmq.v6.jms.internal.MQMessageConsumer.receiveAsync(MQMessageConsumer.java:4249)
        at com.ibm.msg.client.wmq.v6.jms.internal.SessionAsyncHelper.run(SessionAsyncHelper.java:537)
        at java.lang.Thread.run(Thread.java:770)
    Caused by: com.sap.aii.messaging.adapter.trans.TransformException: Error converting Message: 'sun.io.MalformedInputException'; nested exception caused by: sun.io.MalformedInputException
        at com.sap.aii.messaging.adapter.Conversion.service(Conversion.java:714)
        at com.sap.aii.af.modules.trans.MessageTransformBean.processTransform(MessageTransformBean.java:538)
        at com.sap.aii.af.modules.trans.MessageTransformBean.processTransform(MessageTransformBean.java:528)
        at com.sap.aii.af.modules.trans.MessageTransformBean.processTransform(MessageTransformBean.java:471)
        at com.sap.aii.af.modules.trans.MessageTransformBean.process(MessageTransformBean.java:364)
        ... 36 more
    Caused by: sun.io.MalformedInputException
        at sun.io.ByteToCharUTF8.convert(ByteToCharUTF8.java:270)
        at sun.nio.cs.StreamDecoder$ConverterSD.convertInto(StreamDecoder.java:287)
        at sun.nio.cs.StreamDecoder$ConverterSD.implRead(StreamDecoder.java:337)
        at sun.nio.cs.StreamDecoder.read(StreamDecoder.java:223)
        at java.io.InputStreamReader.read(InputStreamReader.java:208)
        at java.io.BufferedReader.fill(BufferedReader.java:153)
        at java.io.BufferedReader.readLine(BufferedReader.java:316)
        at java.io.LineNumberReader.readLine(LineNumberReader.java:176)
        at com.sap.aii.messaging.adapter.Conversion.convertPlain2XML(Conversion.java:310)
        at com.sap.aii.messaging.adapter.Conversion.service(Conversion.java:709)
        ... 40 more
    Any ideas?
    Kind regards, Stefan

    Hi Stefan,
    for the first MTB now we are using only one parameter: Transform.ContentType = text/plain;charset="ISO-8859-1"
    The second MTB, which does the XML-Wrapping, is configured like this:
    Transform.Class = com.sap.aii.messaging.adapter.Conversion
    Transform.ContentType = application/xml
    xml.conversionType = SimplePlain2XML
    xml.fieldNames = value
    xml.fieldSeparator = §%zulu§%
    xml.processFieldNames = fromConfiguration
    xml.structureTitle = payload
    Both CCSID configuration parameters from the "Source"-Tab we've set to 850.
    Now, we don't get an error anymore - sun.io.malformedInputException - , but, unfortunately, now special character conversion succeeded (we need an "ß" and we get an ISO-HEX-E1 -> á).  E1 is (different from ISO) an "ß" in 850.
    Any ideas?

  • Simplify Chinese problem with java Plug-in 1.5.0 and above

    I have a java applet that will run perfectly in 1.4.2 but in 1.5.0 the simplify Chinese cannot be displayed correctly (looks like encoding problem). Does anyone know with the solution? Thx

    Check the font setting

  • Encoding Problem in solaris

    I generated a document in a solaris machine which follows the encoding scheme "ISO-8859-1". This document contains symbols such as British currency pound symbols.
    Now, I am passing this document as an input to my application. My application runs on another machine which follows "US-ASCII 7bit" encoding scheme. Here, the input file undergoes some processing by my application and when I see the file now, the British currency pound symbols is converted to question marks.
    To stop this, can I use the -Dfile.encoding option as
    java -Dfile.encoding=ISO-8859-1 -classpath.......
    Is the format right? will I get any problem changing the format? once I complete running my application will the encoding scheme revert back to the the default one?
    Thanks
    Shiv

    That should be fine but you should avoid setting file.encoding for reading only one file. What will you do when your program grows and needs to communicate with the system using the system's own default character encoding? It's better to set the encoding in the program itself, like this:final String ENCODING = "ISO-8859-1";
    Reader in = new InputStreamReader(new FileInputStream(file), ENCODING);The encoding does not have to be hardcoded, instead you could use System.getProperty("my.program.encoding", "ISO-8859-1") or what ever.

  • XML deserialize and decrypting encoding problem. Please help me

    This is my first topic here, so at first I'd like to say "Hi" everyone and apologise for my bad english ;)
    I have just finished my new application about signing/checking and encrypting/decrypting XML files. I use Apache XML Security packages to do this.
    Everything works fine, instead of one...
    I'm Polish and sometimes I have to encrypt or decrypt XML which includes polish letters like: '&#261;' , '&#281;', '&#322;' and some others... If I encrypt such file, it succeeds. The problem is when I try to decrypt such an encrypted file. I recieve an error like :
    "[Fatal Error] :2:7: An invalid XML character (Unicode: 0x19) was found in the element content o
    f the document.
    gov.mf.common.exceptions.SenderException: E_SENDER_DECRYPTION
    at gov.mf.common.xml.encryption.EncryptTool.decrypt(Unknown Source)
    at gov.mf.CERBER.TestCBR.main(Unknown Source)
    Caused by: org.apache.xml.security.encryption.XMLEncryptionException: An invalid XML character
    (Unicode: 0x19) was found in the element content of the document.
    Original Exception was org.xml.sax.SAXParseException: An invalid XML character (Unicode: 0x19)
    was found in the element content of the document.
    at org.apache.xml.security.encryption.XMLCipher$Serializer.deserialize(Unknown Source)
    at org.apache.xml.security.encryption.XMLCipher.decryptElement(Unknown Source)
    at org.apache.xml.security.encryption.XMLCipher.doFinal(Unknown Source)
    ... 2 more
    What's wrong? My XML document is UTF-8 encoded, with or without BOM. I wrote in in Notepad++ or any other editior which has UTF-8 encoding.
    I'm parsing my XML with DOM. There is an interesting line in an error above like: " at org.apache.xml.security.encryption.XMLCipher$Serializer.deserialize(Unknown Source)" , do you know that?
    Everything is fine when I try to encrypt/decrypt '�' or '&#324;', but things go wrong with '&#261;', '&#281;', '&#322;' and others... I also managed to encrypt and decrypt '&#322;' but unfortunately, after decryption '&#322;' turns into 'B'. It obviously an encoding problem, but how to fix it?
    I would be really thankfull if some of You guys would help me.
    Looking forward fo any answers.
    Matthew
    Message was edited by:
    matthew_pl

    Hi once again.
    I still don't havy any solution to my problem. I used Apache XML Security examples to encrypt/decrypt my XML document with Polish charaters but I also recieve the same error. What's wrong?
    Here is some code:
    ----- Parsing XML do Document ------
    DocumentBuilderFactory factory = DocumentBuilderFactory.newInstance();
         //Bardzo wazna linijka - bless TEK ;)
         factory.setNamespaceAware(true);
         DocumentBuilder builder;
         builder = factory.newDocumentBuilder();
         File f = new File(Const.FILE_IN_PATH + File.separator + Const.FILE_IN);     
         org.w3c.dom.Document doc = builder.parse(f);
    ---------- Encrypting & Decrypting XML document (whole class) -------------
    import java.io.*;
    import java.security.*;
    import javax.crypto.SecretKey;
    import javax.crypto.SecretKeyFactory;
    import javax.crypto.spec.DESedeKeySpec;
    import org.w3c.dom.Document;
    import org.w3c.dom.Element;
    import org.apache.xml.security.keys.KeyInfo;
    import org.apache.xml.security.utils.EncryptionConstants;
    import org.apache.xml.security.encryption.XMLCipher;
    import org.apache.xml.security.encryption.EncryptedData;
    import org.apache.xml.security.encryption.EncryptedKey;
    public class EncryptTool
    private PublicKey publicKey;     
    private PrivateKey privateKey;
    static
    org.apache.xml.security.Init.init();
    public EncryptTool()
         publicKey = KeyStores.getCerberPublicKey();
         privateKey = KeyStores.getCerberPrivateKey();
    public Document encrypt(Document doc, String sufix)
    try
         byte[] passPhrase = "24 Bytes per DESede key!".getBytes("UTF-8");
         DESedeKeySpec keySpec = new DESedeKeySpec(passPhrase);
         SecretKeyFactory keyFactory = SecretKeyFactory.getInstance("DESede");
         SecretKey secretKey = keyFactory.generateSecret(keySpec);
         XMLCipher keyCipher = XMLCipher.getInstance(XMLCipher.RSA_v1dot5);
         keyCipher.init(XMLCipher.WRAP_MODE, publicKey);
         EncryptedKey encryptedKey = keyCipher.encryptKey(doc, secretKey);
              Element elementToEncrypt = (Element) doc.getDocumentElement();
              System.out.println("Szyrfuj&#281;: " + elementToEncrypt.getTextContent());
              XMLCipher xmlCipher = XMLCipher.getInstance(XMLCipher.TRIPLEDES);
              xmlCipher.init(XMLCipher.ENCRYPT_MODE, secretKey);
              EncryptedData encryptedDataElement = xmlCipher.getEncryptedData();
              KeyInfo keyInfo = new KeyInfo(doc);
              keyInfo.add(encryptedKey);
              encryptedDataElement.setKeyInfo(keyInfo);
              boolean encryptContentsOnly = true;
              xmlCipher.doFinal(doc, elementToEncrypt, encryptContentsOnly);
              // output the resulting document
              String [] parts = Const.FILE_IN.split("\\.");
              String saveAs = Const.FILE_OUT_PATH + File.separator + parts[0] + sufix + "." + parts[1];
              OutputStream os = new FileOutputStream(saveAs);
              XMLUtil.sameXMLtoFile(doc, os);
    } catch (Exception ex)
         throw new TestCBRException("E_CERBER_ENCRYPTION", ex);
    return doc;
    public void decrypt(Document doc, String sufix) throws SenderException
    try
              String namespaceURI = EncryptionConstants.EncryptionSpecNS;
         String localName = EncryptionConstants._TAG_ENCRYPTEDDATA;
         int ile = doc.getElementsByTagNameNS(namespaceURI, localName).getLength();
         if (ile == 0) throw new SenderException("E_SENDER_DECRYPTION_NEEDED");
         for(int i=0; i < ile; i++)
         Element encryptedDataElement = (Element) doc.getElementsByTagNameNS(namespaceURI, localName).item(0);
         XMLCipher xmlCipher = XMLCipher.getInstance();
         xmlCipher.init(XMLCipher.DECRYPT_MODE, null);
         xmlCipher.setKEK(privateKey);
         xmlCipher.doFinal(doc, encryptedDataElement);
                   String [] parts = Const.FILE_IN.split("\\.");
                   String saveAs = Const.FILE_OUT_PATH + parts[0] + sufix + "." + parts[1];
                   OutputStream os = new FileOutputStream(saveAs);
                        XMLUtil.saveXMLtoFile(doc, os);
    } catch (SenderException ex) {
         throw ex;
    } catch (Exception ex) {
         throw new SenderException("E_SENDER_DECRYPTION", ex);
    Please help me. I'm going into madness what's wrong with it...

  • How to detect the root cause of  XML encoding problem ?

    Hi,
    I need to identify the exactly root cause of error when parssing a XML ( ISO-8859-1 encoding) problem.
    How can I do this using JAVA ?
    regards
    ICP

    Hi dekassegui,
    Thanks for your response
    The error is an error from Oracle HTTP adapter servlet. The message error is : "oracle.xml.parser.v2.XMLParseException"
    My intention is to verify the data before thats receieved by the adapter and the servlet.
    I did my own servlet extending the orgirinal servlet to show and log the entire received content. The content looks "OK".
    Now I would like to check a possible special character or symbol unsupported by enconding.
    The Input data is aware of my control. But if the error could be detected, message senders will correct this.
    My major problem is to ensure what is the root cause of the error.
    regards,
    ICP

  • Problem with Java and Windows (Mainly Vista and UAC)

    Hi all,
    I am having a problem with a program that I've devoloped. The program itself is packaged as a jar and I plan to deploy it across multiple platforms eventually however right now i am only concerned about windows based systems. I have made an installer for a windows baised systems using NSIS to install the software files. I made the installer as I need several java packages to be installed so the program would work (JAI, J3D, JAI ImageIO) and I also require the program to have fileassociations on windows.
    I know that this is not what java is about, however the majority of the users will be on windows baised systems so I've decided that OS specific installers is the best option.
    During the process I have noticed that there are several key problem with java for this type of application!
    The first issue that I have come across is getting file associations to work on java. As a .jar is not an excutable it is not possible to directly associate a filetype with it in java so to overcome this I currently run the program from a .bat files and also the program requires large memory so this also allows me to run the program with -xmx. The batch file that I use is :
    <code>
    cd PATH TO PROGRAM
    start javaw -Dsun.java2d.noddraw=true -Xmn100M -Xms500M -Xmx1000M -jar "PATH TO PROGRAM\program.jar" %1 -vram 134217728
    pause;
    </code>
    Ok so all this appears to work fine and allows windows to have file associations and start the program and thats all works perfectly but this is a non-ideal solution. Has anyone got any advice on improving this?
    The next problem that I have appears to be a problem with Vista and UAC (user access control). When a user installs the program and installs the program into the program files directory I found that the program did not work and kept saying that I did not have access to the files in the current directory. This is a problem as I read and write settings files during program execution.
    On a Vista system UAC prevents file write operations into the Program Files directory unless the program has requested elevated status even if the user is a full administrator. The probem is that there appears to be no real way to achieve this under java that I'm aware of...
    Has anyone else had this probem and has a suitable solution?
    Any advice on these issues would realy be appricated.
    Regards
    Joey

    Ok so i've kinda found a solution, its not ideal but its very good. I found this program called Elevate
    A link to the site I got it was
    http://www.wintellect.com/cs/blogs/jrobbins/archive/2007/03/27/elevate-a-process-at-the-command-line-in-vista.aspx
    This program allows you start java with a UAC dialog for high access using
    Elevate java -jar myjar.jar
    This then allows you to have full access using java... I guess it could be dangerous but it does the job.

  • Problem with java and pogo games

    i use mozilla and now with the problems with java and hackers cannot play my pogo games,what can i do? i disabled my java i tried java 6 doesnt work or is not safe,what is a safe way to play games on pogo that use java?

    Oracle has released a Java 7 Update 11 to address security vulnerabilities and you should update to that version.
    *https://support.mozilla.org/kb/how-to-use-java-if-its-been-blocked
    See also:
    *http://kb.mozillazine.org/Java#Windows_installation_issues
    You can find the latest Java version on the Oracle website.
    See Java Platform > Java SE 7U11 and Java 6U38 (Download JRE)
    *http://www.oracle.com/technetwork/java/javase/downloads/index.html

  • Problem with java swing button and loop

    Problem with java swing button and loop
    I�m using VAJ 4.0. and I�m doing normal GUI application. I have next problem.
    I have in the same class two jswing buttons named start (ivjGStart) and stop (ivjGStop) and private static int field named Status where initial value is 0. This buttons should work something like this:
    When I click on start button it must do next:
    Start button must set disenabled and Stop button must set enabled and selected. Field status is set to 1, because this is a condition in next procedure in some loop. And then procedure named IzvajajNeprekinjeno() is invoked.
    And when I click on stop button it must do next:
    Start button must set enabled and selected and Stop button must set disenabled.
    Field status is set to 0.
    This works everything fine without loop �do .. while� inside the procedure IzvajajNeprekinjeno(). But when used this loop the start button all the time stay (like) pressed. And this means that a can�t stop my loop.
    There is java code, so you can get better picture:
    /** start button */
    public void gStart_ActionEvents() {
    try {
    ivjGStart.setEnabled(false);
    ivjGStop.setEnabled(true);
    ivjGStop.setSelected(true);
    getJTextPane1().setText("Program is running ...");
    Status = 1;
    } catch (Exception e) {}
    /** stop button */
    public void gStop_ActionEvents() {
    try {
    ivjGStart.setEnabled(true);
    ivjGStart.setSelected(true);
    ivjGStop.setEnabled(false);
    getJTextPane1().setText("Program is NOT running ...");
    Status = 0;
    } catch (Exception e) {
    /** procedure IzvajajNeprekinjeno() */
    public void IzvajajNeprekinjeno() {  //RunLoop
    try {
    int zamik = 2000; //delay
    do {
    Thread.sleep(zamik);
    PreberiDat(); //procedure
    } while (Status == 1);
    } catch (Exception e) {
    So, I'm asking what I have to do, that start button will not all the time stay pressed? Or some other aspect of solving this problem.
    Any help will be appreciated.
    Best regards,
    Tomi

    This is a multi thread problem. When you start the gui, it is running in one thread. Lets call that GUI_Thread so we know what we are talking about.
    Since java is task-based this will happen if you do like this:
    1. Button "Start" is pressed. Thread running: GUI_Thread
    2. Event gStart_ActionEvents() called. Thread running: GUI_Thread
    3. Method IzvajajNeprekinjeno() called. Thread running: GUI_Thread
    4. Sleep in method IzvajajNeprekinjeno() on thread GUI_Thread
    5. Call PreberiDat(). Thread running: GUI_Thread
    6. Check status. If == 1, go tho 4. Thread running: GUI_Thread.
    Since the method IzvajajNeprekinjeno() (what does that mean?) and the GUI is running in the same thread and the event that the Start button has thrown isn't done yet, the program will go on in the IzvajajNeprekinjeno() method forever and never let you press the Stop-button.
    What you have to do is do put either the GUI in a thread of its own or start a new thread that will do the task of the IzvajajNeprekinjeno() method.
    http://java.sun.com/docs/books/tutorial/uiswing/index.html
    This tutorial explains how to build a multi threaded gui.
    /Lime

Maybe you are looking for