How to include spaces in rmi codebase value url?

I am writing an RMI application to run on a LAN, and for my codebase value I am using an URL with the format file:///d:\dir1\dir2\.xx.jar, where the path points to a directory on the server's hard drive. I need to accommodate the situation where dir1 or dir2 contains a space. When I simply use the space (e.g. d:\program files\dir2\xx.jar), I get a java.net.MalformedURLException. When I substitute %20 where the space is, (e.g. d:\program%20files\dir2\xx.jar), the URL is accepted but I get a java.lang.ClassNotFoundException. I know the java.lang.ClassNotFoundException is not due to a path problem (I tested with an identical directory structure, except that I used a path whose directories contained no spaces -- and everything worked). So I infer that the reason for the java.lang.ClassNotFoundException is that no directory with the name "program%20files" exists on the hard drive.
Any advice would be most appreciated.

This is not a bug that Java have to solve, it is the
way URL's should be formed.Actually this is a very bad bug in Java. URL's are just absolute URI's (according to the RFC's, but in Java, URL has little to do with URI), which donot_ allow spaces: spaces must be encoded. When the original URL class was written the RFC's were ignored, and spaces were allowed. Now there is a URI class that works properly (not allowing spaces) which is contradictory to URL.
Worst of all, creating a URL is ambiguous. In the URL
"file:/tmp/foo%20bar.txt"
is this the encoded version of a file with a space, or is it the unencoded version of a file with '%' '2' '0' characters in it? There are regression bug reports for places where this has changed behavior in the Java library (something about RMI for those interested).
SUN refuses to fix URL because of all the legacy code that relies upon this bug. There are many bug reports, (search the Bug Database for "URL space") often marked simply "will not fix".
http://developer.java.sun.com/developer/bugParade/bugs/4273532.html
This is a nasty little problem, and I don't think it can be solved without making a new URL class which behaves correctly, and deprecating the old class. Well, you could also just fix URL and break legacy code :)

Similar Messages

  • How to include and exclude external infoobject values in a hierarchy

    Hello experts,
    I'm working with hierarchies and the problem I have is that I don´t know how to include nor exclude a value in the definition of the hierarchy.
    For example, I want to show in a query some cost elements related to some functional areas, so I've created a hierarchy for md funcional area. But I don't want to show every cost element related to one functional area but only some of them. I've defined 0costelmnt as a external characteristic for 0func_area infoobject so that I can specify in the hierarchy the cost elements I want to show. But it doesn´t work, in the report all cost elements are showed. How can I specify the ones I want to show?
    thank you very much.

    Any ideas please?

  • How to include spaces in javaplugin.jre.params

    G'day,
    I;m working with the Java Plug-In v1.3.1 with Windows 2000 and would like to define a property using the javaplugin.jre.params, namely
    javaplugin.jre.params=-Djava.ext.dirs\=D\:/Documents and Settings/cpudney/lib/ext
    so I can define my own standard extensions directory (actually it's a bit more complicated but the crux of the problem is given here). This is done in D:\Documents and Settings\cpudney\.java\properties131 (or via the Java Plug-in console).
    The problem is that the path name includes spaces, so when the plug-in runs java.ext.dirs=D:/Documents
    I've tried escaping the spaces with backslashes, enclosing in quotes, using %20 and \u0020 but nothing works.
    The obvious workaround is to use the DOS 8.3 name (D:/DOCUME~1/cpudney/lib/ext) but I want to avoid having to do this.
    Any help would be appreciated.
    Thanks,
    Chris.

    Hey Chris,
    The bad news, this is a known bug. See http://developer.java.sun.com/developer/bugParade/bugs/4795045.html
    The good news, this has been fixed in Tiger/1.5
    Although, if you are still using 1.3x, I'll bet you can't easily migrate to 1.5 when it is released.
    Is the DOS 8.1 naming that bad to use in the meantime? The more I toyed with possible workarounds, the more enticing the 8.1 naming seemed.
    Eric

  • How to add spaces to the column value to make it up specifi length string please

    Hello There,
    Could you please guide me here to solve this issue,
    in my column (named as State) contains values as below
    California
    Washington
    Utah
    Connecticut
    Massachusets
    in the output how can i add a spaces to make up every column values as 15 length (for ex, Utah is 4 length then need to add 11 spaces, California is 10 would like to add 5 spaces)
    i tried below but no use in Sql 2008 R2
    SELECT  distinct state
       state
    +SPACE(35-len(state)),
    len(state+SPACE(35-len(state)))
    FROM dbo.ordersInfo
    Thank you in advance
    Milan

    Fixed length CHAR(n) data in SQL is automatically padded with spaces. Either change the column's data type or cast to it. Also, the ISO-11179 rules are that the column should be "state_name" and not just the root attribute "state" -- state_code, state_population,
    etc are a few of the confusions you created. 
    Another rule of RDBMS is that we do not do display formatting in the data. That is what presentation layers do. Why are you trying to fake COBOL in SQL? 
    --CELKO-- Books in Celko Series for Morgan-Kaufmann Publishing: Analytics and OLAP in SQL / Data and Databases: Concepts in Practice Data / Measurements and Standards in SQL SQL for Smarties / SQL Programming Style / SQL Puzzles and Answers / Thinking
    in Sets / Trees and Hierarchies in SQL

  • How to include both percentages and number values in a cross-tab chart?

    Hi,
    I created a cross-tab and a multiple pie chart using Crystal XI. I would like to include percentages as well as numbers in my pie charts' slices. Seems I can either show % or numbers but not both!
    The multiple pie chart compares different charges for different Departments. It has an On Change Of by "DifferentDepartments" and "ItemCharges" (e.g. Normal, Double Time, Time & half, Shift, Meal... )  and the Summary value is sum of "Labour".
    Is there any workaround available? Please advice.
    Thanks,
    Nazee
    Edited by: Nazee TVK on Feb 23, 2012 1:52 AM

    hi Nazee,
    this is possible sometimes, using a workaround, and depending on the values you're showing.
    instead of using your department field as the On Change Of field, create a new formula which is something like
    {departmentfield} + chr(10) + totext({your group level summary})
    as an example using the xtreme sample databae
    {Customer.Customer Name} + chr(10) +
    totext(Sum ({Customer.Last Year's Sales}, {Customer.Customer Name}))
    now in your Pie Chart switch the department field for the new formula you just created.
    i have attached a sample report...however, please note that the forums sometimes don't work with these attachments. so you can try different browsers or right clicking on the attachment and doing a save first etc.
    jamie

  • How to include the promotion and sales deal in the value contract ?

    Question : Can a value contract contain other special pricing agreement ?
    If yes, how to include the promotion and sales deal in the value contract ?
    Thanks for your input.
    Oscar

    Hi Oscar,
    I have not worked on this aspect as such but once you create a value contract I think you as well create a promotion and sales deal for the customer with whom you have value contract with in the validity period of the contract and system should pick up data accordingly as the customer is same (Contract) and is within the validity period.
    Pl give feed back.
    regards
    Srini

  • How to include columns with a space in name in clientcontext load method in JSOM

    Hi Gurus,
    I have a situation where I need to read a list that has a column 'Repositary Name'.
    While I am reading the list in my JSOM I need to load this column in the clientcontext.load method.
    My code likes this below.
    this.collListItem = list.getItems(camlQuery);
        ctx.load(collListItem, 'Include(Title, 'Repositary Name')')
    The Issue is I can not load this 'Repositary Name' column. I tried with its internal name, removing the space, putting the name in single quote but nothing works.
    Please advice how to include a column in clientcontext.load method that has a space in its name .
    Changing the column is not a option and I have to have call it before I use it my Async Methods.

    Hi,
    If I am getting your issue correctly, I think you should put _x0020_ in place of space in your column name. In your case try Repositary_x0020_Name.
    ***If my post is answer for your query please mark as answer***
    ***If my answer is helpful please vote***

  • How to get space between two values in a single cell of a table.

    hello,
            how to get space between two values in a single cell of a table.
    thanks a lot.
    kailash.

    sorry i got the answer.

  • How much cloud space is included with the CC Photography plan?

    How much cloud space is included with the CC Photography plan?

    Hi Jeffrey,
    Please contact Support: https://helpx.adobe.com/contact.html
    Kind regards,
    Ben

  • How do I find the number of characters including spaces in Pages '13?

    Hi,
    I need the number of characters including spaces on the new pages for an online document I have to fill in. I've found the character count excluding spaces but this is of no use to me.
    Thanks

    http://lifehacker.com/5907637/add-a-right+click-option-to-count-characters-words -and-paragraphs-in-any-mac-program
    Use this version of the script:
    http://hints.macworld.com/comment.php?mode=view&cid=129016
    Peter

  • How to specify sourcepath including spaces?

    Hi, I am new here.
    I trled to generale a javadoc from my package under D:\Apache Group\Tomcat 4.1\webapps\<myapp>\WEB-INF\classes\<my package> some times (The tree is argument of -sourcepath). However an error occurred.
    javadoc (command) says...
    javadoc: Illegal package name: "Group\Tomcat"
    javadoc: Illegal package name: "4.1\webapps\<myapp>\WEB-INF\classes\<my package>"
    the command makes it separated.
    Can't specify sourcepath including spaces? or Is there substitute way to specify? I can move the package to another directory not including spaces though, but it is inefficient for development...
    I will appreciate helps.

    Try enclosing the argument for the sourcepath option in quotation marks:-sourcepath "D:\Apache Group\Tomcat 4.1\..."

  • How to include body of the mail along with attachment using the below FM

    Hi All,
    I am using the FM 'SO_NEW_DOCUMENT_ATT_SEND_API1' to generate an e-mail with excel file as attachment. Can you please  let me know how to include body of the e-mail along with this attachment.
    Thanks & Regards
    Gowthami

    hi,
    see this code
    TABLES: apqi.                         "Queue info definition
    TYPES DECLARATION
    *& Global Types
    TYPE-POOLS: slis,                     "Type for alv list
                sx.                       "SAP connect
    TYPE-POOLS: list.
    *& Types
    TYPES: BEGIN OF s_itab_apqi.
            INCLUDE STRUCTURE apqi.
    TYPES: END OF s_itab_apqi.
               INTERNAL TABLE / WORK AREA DECLARATION             *
    *&  For email  attachment
    DATA:   it_message TYPE STANDARD TABLE OF solisti1 INITIAL SIZE 0
                    WITH HEADER LINE.
    DATA:   it_attach TYPE STANDARD TABLE OF solisti1 INITIAL SIZE  0
                    WITH HEADER LINE.
    DATA:   it_packing_list  LIKE sopcklsti1 OCCURS 0 WITH HEADER LINE,
            it_contents      LIKE solisti1 OCCURS 0 WITH HEADER LINE  ,
            it_receivers     LIKE somlreci1 OCCURS 0 WITH HEADER LINE ,
            it_attachment    LIKE solisti1 OCCURS 0 WITH HEADER LINE  ,
            it_object_header LIKE solisti1 OCCURS 0 WITH HEADER LINE  .
    DATA:   v_cnt            TYPE i                                   ,
            v_sent_all(1)    TYPE c                                   ,
            v_doc_data       LIKE sodocchgi1                          ,
            gd_error         TYPE sy-subrc                            ,
            gd_reciever      TYPE sy-subrc                            .
    DATA: p_email   TYPE somlreci1-receiver
                                 VALUE 'mail id here of the reciever'.
    *&   Variable for attachment name
    DATA: v_attach(12).
    *&   Internal table to get data from apqi table
    table here
    DATA: ws_line TYPE slis_listheader.
    DATA: it_list_top_of_page TYPE slis_t_listheader.
    CONSTANTS : v_formname_top_of_page TYPE slis_formname VALUE 'TOP_OF_PAGE'.
    VARIABLE DECLARATION
    DATA: v_colpos        TYPE i.
    DATA: v_transcnt(10)  TYPE c,
          v_transcnte(10) TYPE c,
          v_transcntf(10) TYPE c,
          v_msgcnt(10)    TYPE c,
          v_qid(20)       TYPE c.
    DATA  v_tot_rec(3)    TYPE n.
    DATA :v_date(10) TYPE c,
          v_time(8) TYPE c .
    DATA: v_fromdate(10) .
    DATA: v_todate(10) .
    SELCTION SCREEN
    SELECTION-SCREEN BEGIN OF BLOCK blk1 WITH FRAME TITLE text-015.
    PARAMETERS:
    SELECTION-SCREEN END OF BLOCK blk1.
    AT SELCTION SCREEN
    AT SELECTION-SCREEN.
      IF p_dfrom IS INITIAL AND
         NOT p_dato IS INITIAL.
        MESSAGE e000(zp) WITH text-020.
      ENDIF.
    START OF SELECTION
    START-OF-SELECTION.
    *&  To get data from APQI table into internal table
      PERFORM populate_itab.
    **To Populate table with details to be entered into .xls file
      PERFORM build_xls_data_table.
    END OF SELECTION
    END-OF-SELECTION.
    *& To display ALV list when IT_APQI is not initial
      IF NOT it_apqi[] IS INITIAL.
    *&-- Send an Notification email
        PERFORM send_email .
    *&--To populate fields for ALV
        PERFORM build_fieldcat   .
        PERFORM build_eventcat   .
        PERFORM e04_comment_build  USING it_list_top_of_page[].
        PERFORM build_layout     .
        PERFORM build_sortcat    .
        PERFORM start_list_viewer.
      ELSE.
    *&-- If no record exists in IT_APQI internal table then message is displayed
        MESSAGE s000(zp) WITH text-021.
      ENDIF.
    FORMS **********************************
    populate itab here -
    *&      Form  BUILD_FIELDCAT
    FORM build_fieldcat .
    ENDFORM.                    " BUILD_FIELDCAT
    *&      Form  BUILD_EVENTCAT
    FORM build_eventcat .
      DATA: v_header(25) .
      CONCATENATE 'ZPIPY016' p_dfrom p_dato INTO v_header.
      CALL FUNCTION 'REUSE_ALV_EVENTS_GET'
        EXPORTING
          i_list_type     = 0
        IMPORTING
          et_events       = it_eventcat[]
        EXCEPTIONS
          list_type_wrong = 1
          OTHERS          = 2.
      READ TABLE it_eventcat WITH KEY name = slis_ev_top_of_page
                                 INTO wa_eventcat.
      IF sy-subrc = 0.
        MOVE v_formname_top_of_page TO wa_eventcat-form.
        APPEND wa_eventcat TO it_eventcat.
      ENDIF.
    ENDFORM.                    " BUILD_EVENTCAT
    *&      Form  BUILD_LAYOUT
    FORM build_layout .
      ws_layout-no_keyfix           = 'X'.
      ws_layout-group_buttons       = 'X'.
      ws_layout-colwidth_optimize   = 'X'.
    ENDFORM.                    " BUILD_LAYOUT
    *&      Form  BUILD_SORTCAT
    FORM build_sortcat .
      CLEAR wa_sortcat.
      CLEAR v_colpos.
    ENDFORM.                    " BUILD_SORTCAT
    *&      Form  START_LIST_VIEWER
    FORM start_list_viewer .
      DATA: ws_pgm  LIKE sy-repid.
    *& To Display ALV list
      ws_pgm = sy-repid.
      CALL FUNCTION 'REUSE_ALV_LIST_DISPLAY'
        EXPORTING
          i_callback_program = ws_pgm
          is_layout          = ws_layout
          it_fieldcat        = it_fieldcat
          it_sort            = it_sortcat
          i_save             = 'A'
          it_events          = it_eventcat
        TABLES
          t_outtab           = it_apqi
        EXCEPTIONS
          program_error      = 1
          OTHERS             = 2.
    ENDFORM.                    " START_LIST_VIEWER
    *&      Form  BUILD_XLS_DATA_TABLE
    FORM build_xls_data_table .
      CLASS cl_abap_char_utilities DEFINITION LOAD.
      CONSTANTS: con_tab  TYPE c VALUE cl_abap_char_utilities=>horizontal_tab,
                 con_cret TYPE c VALUE cl_abap_char_utilities=>cr_lf.
    *& To populate it_attach table to be send as email.
      CONCATENATE 'Error of transaction SM35' ' '
         INTO it_attach SEPARATED BY con_tab.
      CONCATENATE con_cret it_attach  INTO it_attach.
      APPEND  it_attach.
    *& To gettotal number of error records
      DESCRIBE TABLE it_apqi LINES v_tot_rec .
      CONCATENATE  'Number of Errors  = '  v_tot_rec
                INTO it_attach SEPARATED BY con_tab.
      CONCATENATE con_cret it_attach  INTO it_attach.
      APPEND  it_attach.
      CONCATENATE text-001
                  text-002
                  text-003
                  text-004
                  text-005
                  text-006
                  text-007
                  text-008
                  text-009
                  text-010
                  text-011
                  text-012
             INTO it_attach SEPARATED BY con_tab.
      CONCATENATE con_cret it_attach  INTO it_attach.
      APPEND  it_attach.
    *& To populate it_attach from it_apqi
      LOOP AT it_apqi INTO wa_apqi.
    *& To get the date format in DD/MM/YYYY
        WRITE wa_apqi-credate TO v_date  DD/MM/YYYY.
    *& To get time format in hh:mm:ss.
        v_time = wa_apqi-cretime.
        CONCATENATE  v_time(2) ':' v_time2(2) ':' v_time4(2) INTO v_time.
        v_transcnt  = wa_apqi-transcnt.
        v_transcnte = wa_apqi-transcnte.
        v_transcntf = wa_apqi-transcntf.
        v_msgcnt    = wa_apqi-msgcnt.
        v_qid       = wa_apqi-qid.
        CONCATENATE wa_apqi-groupid wa_apqi-creator
                         wa_apqi-qstate v_date
                         v_time wa_apqi-progid
                         wa_apqi-userid  v_transcnt
                         v_transcnte v_transcntf
                         v_msgcnt v_qid
                   INTO it_attach SEPARATED BY con_tab.
        CONCATENATE con_cret it_attach  INTO it_attach.
        APPEND  it_attach  .
        CLEAR   it_attach  .
        CLEAR:  v_transcnt ,
                v_transcnte,
                v_transcntf,
                v_msgcnt   ,
                v_qid      ,
                v_date     ,
                v_time     .
      ENDLOOP.
    ENDFORM  .                    " BUILD_XLS_DATA_TABLE
    *&      Form  POPULATE_EMAIL_MESSAGE_BODY
    FORM populate_email_message_body .
      REFRESH it_message.
      it_message = 'message here'.
      APPEND it_message.
      CLEAR it_message.
    ENDFORM.                    " POPULATE_EMAIL_MESSAGE_BODY
    *&      Form  SEND_FILE_AS_EMAIL_ATTACHMENT
    FORM send_file_as_email_attachment TABLES pit_message
                                              pit_attach
                                        USING p_email
                                              p_mtitle
                                              p_format
                                              p_filename
                                              p_attdescription
                                              p_sender_address
                                              p_sender_addres_type
                                     CHANGING p_error
                                              p_reciever.
      DATA: ld_error    TYPE sy-subrc,
            ld_reciever TYPE sy-subrc,
            ld_mtitle LIKE sodocchgi1-obj_descr,
            ld_email LIKE  somlreci1-receiver,
            ld_format TYPE  so_obj_tp ,
            ld_attdescription TYPE  so_obj_nam ,
            ld_attfilename TYPE  so_obj_des ,
            ld_sender_address LIKE  soextreci1-receiver,
            ld_sender_address_type LIKE  soextreci1-adr_typ,
            ld_receiver LIKE  sy-subrc.
      ld_email               = p_email         .
      ld_mtitle              = p_mtitle        .
      ld_format              = p_format        .
      ld_attdescription      = p_attdescription.
      ld_attfilename         = p_filename      .
      ld_sender_address      = p_sender_address.
      ld_sender_address_type = p_sender_addres_type.
    Fill the document data.
      v_doc_data-doc_size = 1.
    Populate the subject/generic message attributes
      v_doc_data-obj_langu = sy-langu.
      v_doc_data-obj_name  = 'SAPRPT'.
      v_doc_data-obj_descr = ld_mtitle .
      v_doc_data-sensitivty = 'F'.
    Fill the document data and get size of attachment
      CLEAR v_doc_data.
      READ TABLE it_attach INDEX v_cnt.
      v_doc_data-doc_size =
         ( v_cnt - 1 ) * 255 + STRLEN( it_attach ).
      v_doc_data-obj_langu  = sy-langu.
      v_doc_data-obj_name   = 'SAPRPT'.
      v_doc_data-obj_descr  = ld_mtitle.
      v_doc_data-sensitivty = 'F'.
      CLEAR it_attachment.
      REFRESH it_attachment.
      it_attachment[] = pit_attach[].
    Describe the body of the message
      CLEAR it_packing_list.
      REFRESH it_packing_list.
      it_packing_list-transf_bin = space.
      it_packing_list-head_start = 1.
      it_packing_list-head_num = 0.
      it_packing_list-body_start = 1.
      DESCRIBE TABLE it_message LINES it_packing_list-body_num.
      it_packing_list-doc_type = 'RAW'.
      APPEND it_packing_list.
    Create attachment notification
      it_packing_list-transf_bin = 'X'.
      it_packing_list-head_start = 1.
      it_packing_list-head_num   = 1.
      it_packing_list-body_start = 1.
      DESCRIBE TABLE it_attachment LINES it_packing_list-body_num.
      it_packing_list-doc_type   =  ld_format.
      it_packing_list-obj_descr  =  ld_attdescription.
      it_packing_list-obj_name   =  ld_attfilename.
      it_packing_list-doc_size   =  it_packing_list-body_num * 255.
      APPEND it_packing_list.
    Add the recipients email address
      CLEAR it_receivers.
      REFRESH it_receivers.
      it_receivers-receiver = ld_email.
      it_receivers-rec_type = 'U'.
      it_receivers-com_type = 'INT'.
      it_receivers-notif_del = 'X'.
      it_receivers-notif_ndel = 'X'.
      APPEND it_receivers.
      CALL FUNCTION 'SO_DOCUMENT_SEND_API1'
        EXPORTING
          document_data              = v_doc_data
          put_in_outbox              = 'X'
          sender_address             = ld_sender_address
          sender_address_type        = ld_sender_address_type
          commit_work                = 'X'
        IMPORTING
          sent_to_all                = v_sent_all
        TABLES
          packing_list               = it_packing_list
          contents_bin               = it_attachment
          contents_txt               = it_message
          receivers                  = it_receivers
        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.
    Populate zerror return code
      ld_error = sy-subrc.
    Populate zreceiver return code
      LOOP AT it_receivers.
        ld_receiver = it_receivers-retrn_code.
      ENDLOOP.
    ENDFORM.                    " SEND_FILE_AS_EMAIL_ATTACHMENT
    *&      Form  SEND_EMAIL
    FORM send_email .
    Populate message body text
      PERFORM populate_email_message_body.
      PERFORM send_file_as_email_attachment
                                   TABLES it_message
                                          it_attach
                                    USING p_email
                                          'Error Sessions from SM35'
                                          'XLS'
                                          'filename'
                                          v_attach
                                 CHANGING gd_error
                                          gd_reciever.
    ENDFORM.                    " SEND_EMAIL
    *&      Form  E04_COMMENT_BUILD
          text
         -->E04_LT_TOP_OF_PAGE  text
    FORM e04_comment_build USING lt_top_of_page TYPE slis_t_listheader.
      CLEAR: v_fromdate,
             v_todate.
      WRITE p_dfrom TO v_fromdate  DD/MM/YYYY.
      WRITE p_dato TO  v_todate    DD/MM/YYYY.
    *& To write header in ALV list
    *& Program name
      CLEAR ws_line.
      ws_line-typ  = 'H'.
      ws_line-info = text-016.
      APPEND ws_line TO lt_top_of_page.
      CLEAR ws_line.
      ws_line-typ  = 'S'.
      ws_line-key = text-018.
      ws_line-info = v_tot_rec.
      APPEND ws_line TO lt_top_of_page.
    *& Date from
      CLEAR ws_line.
      ws_line-typ  = 'S'.
      ws_line-key  = text-050.
      ws_line-info = v_fromdate.
      APPEND ws_line TO lt_top_of_page.
    *& Date to
      CLEAR ws_line.
      ws_line-typ  = 'S'.
      ws_line-key  = text-051.
      ws_line-info = v_todate.
      APPEND ws_line TO lt_top_of_page.
    ENDFORM.                    "E04_COMMENT_BUILD
          FORM TOP_OF_PAGE                                              *
    FORM top_of_page.
    *& To write Heading in Top of page
      CALL FUNCTION 'REUSE_ALV_COMMENTARY_WRITE'
        EXPORTING
          it_list_commentary = it_list_top_of_page.
    ENDFORM.                    "TOP_OF_PAGE
    thanks

  • RMI codebase confusion

    You'll have to excuse me if I am asking stupid questions, but I can't find the information I want in the documentation. I am working on an RMI client-server project with 3 jars client.jar, common.jar, server.jar. The common jar contains a Remote interface which the client looks up, and the server implements. The stub class is contained in the server jar (obviously).
    Currently our method of distribution is to distribute all 3 jars to the client machines - I want to avoid this as it is unnecessary. I would therefore like to set java.rmi.codebase property in the server so that clients can download the stub classes at run-time. OK.
    Our RMI app is being distributed on an internal network - suppose on the server machine (call it "ourserver.london.uk.ourco.com", the relevant Jar file would be at /usr/bin/my_app/jars/server.jar (or wherever).
    The clients lookup rmi://ourserver.london.uk.ourco.com:1099/MY_EXPORTED_REMOTE. Questions:
    1. Is this RMI "system" dependent on the server having an Http server?
    2. If it isn't, how do I define the codebase other than "http://..."?
    3. If it is (and the machine certainly does have an http server on it), how do I specify the codebase URL for the clients, given that the server is not "under" the http server (IYSWIM)?
    I'd be glad of answers to these (reasonably simple) questions.
    Chris

    First of all, I would arrange things a bit differently. In both of the cases below, we assume a http server, it's location is unimportent, but it has to be reachable from the the client. It could be the same host as the server, or a third machine.
    Option #1:
    client.jar -- All client class files, including all class files of remote interfaces called by the client.
    server.jar -- All server class files, including all stubs, and remote interfaces implemented and their implementations.
    server_dl.jar -- Just the stubs.
    The client host would contain just client.jar in the classpath.
    The server host would contain server.jar and server_dl.jar in its classpath
    server_dl.jar would also be placed on the http server and it's url would be the server's codebase.
    Option #2:
    client.jar -- All client class files, but none of the remote interfaces.
    server.jar -- All server class files, but none of the stubs and no remote interfaces.
    interfaces.jar -- The remote interfaces shared by client and server.
    server_dl.jar -- just the stubs.
    The client host would need client.jar and interfaces.jar in its classpath.
    The server host would need server.jar, interfaces.jar and server_dl.jar in its classpath.
    server_dl.jar would also be placed on the http server and it's url would be the server's codebase.
    Now to answer your questions.
    1. Is this RMI "system" dependent on the server having an Http server?If you want to have the client download the server stubs, then they have to be on an http server (I think a ftp url for the codebase may also work, but I have not tried it).
    2. If it isn't, how do I define the codebase other than "http://..."?
    You may be able to use a ftp url in which case the url would be "ftp://....."
    3. If it is (and the machine certainly does have an http server on it), how do I > specify the codebase URL for the clients, given that the server is not "under"
    the http server (IYSWIM)?The downloaded class files do not have to be on a http server that is on the same host as the RMI server. The RMI server's codebase can be any valid url (reachable from the clients) The only requirement is that the class files be reachable via the codebase. You do have to configure the client's network security so that it has permission to open connections to the codebase server.

  • HOW to include a reference currency fields in a view ?

    Hello Experts,
    <b>I am having Currency fields error in generic extraction</b>
    I have table where I am trying to extract data to BW via generic extraction. When I tried
    to extract with the TABLE its giving me an error
    <b>Invalid extract structure template RPSCO of DataSource ZBW_REP3_TEST
    You tried to generate an extract structure with the template structure RPSCO. This operation failed, because the template structure quantityfields or currency fields, for example, field WLP00 refer to a differenttable</b>.
    Now I created a view with all the fields same as my table.
    But its still giving me the same error and taking all the fields as a primary keys. I have over 12 currency fields in the table. I am confused how to fix this issue and add a currency field to my view?
    hOW to include a reference currency fields in a view ?
    All inputs are much appreciated.
    Thanks and Regards,
    Harish

    Thank you for your responce,
    Can you please check my view and let me know where I am going wrong     
    View    Table   Field  Dataele  Data
    field                    type                                            0                                                                
    WLP01     RPSCO     WLP01     BP_WPL     CURR     15     Period value in ledger currency
    WLP02     RPSCO     WLP02     BP_WPL     CURR     15     Period value in ledger currency
    WLP03     RPSCO     WLP03     BP_WPL     CURR     15     Period value in ledger currency
    WLP04     RPSCO     WLP04     BP_WPL     CURR     15     Period value in ledger currency
    WLP05     RPSCO     WLP05     BP_WPL     CURR     15     Period value in ledger currency
    WLP06     RPSCO     WLP06     BP_WPL     CURR     15     Period value in ledger currency
    WLP07     RPSCO     WLP07     BP_WPL     CURR     15     Period value in ledger currency
    WLP08     RPSCO     WLP08     BP_WPL     CURR     15     Period value in ledger currency
    WLP09     RPSCO     WLP09     BP_WPL     CURR     15     Period value in ledger currency
    If I add a
    Table TCURC against any field what would be the view field and data element
    Do I need to tick MOD?
    Please suggest.
    Kapadia,
    If I do that its still taking all the fields are a primary keys and bringing 6 lakh records to where I originally have 49 records in a table
    Thanks and Regards,
    Harish

  • How to include Material Cost in the SD report

    Hi,
    I am working on Cube 0SD_C03 for the Sales and Distribution Report "Sales Contribution - Product Wise u2013 KPI" where I have to show the following information which are given below.
    1. Total Sales Qty.
    2. Total Sales Value
    3. Total Material Cost
    For third one I do not know how to include this in this SD report.
    so please tell me about this if anybody has idea about this?

    Hi Francisco,
    Note:
    your xml should only have
    <URL>http://dbxserver.dbxprts.com:7778/pls/apex/f?p=134:1:::NO::P1_ID_CONSTANCIA:1183</URL>
    Show me your sample XML , i can help you.
    What is your expected output ? PDF or HTML ?
    here it is.
    option1:
    If the XML data includes an element that contains a hyperlink , then you can use that element to create dynamic hyperlinks at runtime.
    a. insert hyperlink from word menu
    b. In the Type the file or Web page name field of the Insert Hyperlink dialog box, enter the following syntax:
    c. {ELEMENT_NAME_WHICH_HAS_URL_LINK}
    where ELEMENT_NAME_WHICH_HAS_URL_LINK is the xml data element name
    option2:
    create a form field, you can add it
    <fo:basic-link external-destination="http://www.google..com">
    <fo:inline text-decoration="underline">google Link</fo:inline>
    </fo:basic-link>
    or
    <fo:basic-link external-destination="{ELEMENT_NAME}">
    <fo:inline text-decoration="underline">google Link</fo:inline>
    </fo:basic-link>
    or
    <fo:basic-link>
    <xsl:attribute name="external-destination"><xsl:value-of select="ELEMENT_URL"/>
    </xsl:attribute>
           <xsl:value-of select="LINK_NAME"/>
    </fo:basic-link>

Maybe you are looking for