Portal application connecting to backend R/3 system

Hi All,
           i am developing one portal application through NDS(Netweaver Developer Studio) that connects to backend SAP R/3 system & fetches some data in R/3 system. I started working on it & developed some code, which i want to test whether it is working fine or not.I:e- code to connect to SAP R/3, but when i run the application it doesnt give any error but also it doesnt show any output which it should display(value of output parameter of RFC). Below is the code for component, code for JSP & code for bean. Can any one tell me what is the error in this? or why i am not getting the output i desired. All the connection parameters supplied in the coding are correct. Now below i mentioned these parameters as *, bt in actual i have mentioned them correct. I checked them twice, they are fine.
Code for Component
[code]package com.lti.portal;
//import java.util.ArrayList;
import com.sapportals.htmlb.*;
import com.sapportals.htmlb.enum.*;
import com.sapportals.htmlb.event.*;
import com.sapportals.htmlb.page.*;
import com.sapportals.portal.htmlb.page.*;
import com.sapportals.portal.prt.component.*;
import java.util.ArrayList;
import com.sap.mw.jco.IFunctionTemplate;
import com.sap.mw.jco.JCO;
import com.sun.corba.se.internal.core.Response;
public class Connection_R3 extends PageProcessorComponent {
  public DynPage getPage(){
    return new Connection_R3DynPage();
  public static class Connection_R3DynPage extends JSPDynPage{
    private Conn_R3 myBean = null;
         public JCO.Client mConnection;
          public JCO.Repository mRepository;
          public ArrayList al = new ArrayList();
         public String output;
         public String Ans;
         public static String BEAN_KEY="myBean";
    public void doInitialization(){
          IPortalComponentRequest request =(IPortalComponentRequest) this.getRequest();
          IPortalComponentContext context = request.getComponentContext();
         IPortalComponentProfile profile = context.getProfile();
       //create & initialize the bean.
          Conn_R3 test_bean= new Conn_R3();
          test_bean.setans("3");
          // put the bean into application context.
          context.putValue(BEAN_KEY,test_bean);
          conn();
             //IPortalComponentResponse res = (IPortalComponentResponse)this.getResponse();
             //for(int i=0;i<al.size();i++)
             //res.write(" "+al.get(i).toString());
    public void doProcessAfterInput() throws PageException {
    public void doProcessBeforeOutput() throws PageException {
     this.setJspName("Connection_R3.jsp");
       public ArrayList conn() {
                  IPortalComponentRequest request =(IPortalComponentRequest) this.getRequest();
                    IPortalComponentContext context = request.getComponentContext();
                    IPortalComponentProfile profile = context.getProfile();
                  Conn_R3 sample_bean = new Conn_R3();
                  sample_bean.setans("5");
                  //context.putValue(BEAN_KEY, sample_bean);
                              //r3-accessing
                              //connect_to_r3();
                              try {
                                     // Change the logon information to your own system/user
                                   mConnection = JCO.createClient("800", // SAP client
                              "********", // userid
                              "******", // password
                              null, // language
                              "*******", // application server host name
                      "**"); // system number
                                  mConnection.connect();
                                   //System.out.println(mConnection.getAttributes());
                                     mRepository = new JCO.Repository("ABC", mConnection);
                              } catch (Exception ex) {
                                     ex.printStackTrace();
                                     System.exit(1);
                              JCO.Function function = null;
                              JCO.Table codes = null;
                              try {
                                     function = this.createFunction("ZSAMPLE");
                                     if (function == null) {
                                             System.out.println("ZSAMPLE" + " not found in SAP.");
                                             System.exit(1);
                                     String num1 = "7";
                                     String num2 = "9";
                                     //String ans;
                                     function.getImportParameterList().setValue(num1,"My_import");
                                     function.getImportParameterList().setValue(num2, "My_Import");
                                     mConnection.execute(function);
                              Object name =function.getExportParameterList().getValue(Ans);
                                     output=name.toString();
                                     sample_bean.setans(output);
                                                                        //sample_bean.setans(output)
                                     //al.add(name);
                                     //store values into strings
                                     //pushing of values we get from r3 into awt
                              } catch (Exception ex) {
                                     ex.printStackTrace();
                                     System.exit(1);
                              disconnect_r3();
                           return al;
            public void connect_to_r3() {
                      public JCO.Function createFunction(String name) throws Exception {
                              try {
                                     IFunctionTemplate ft =
                                             mRepository.getFunctionTemplate(name.toUpperCase());
                                     if (ft == null)
                                             return null;
                                     return ft.getFunction();
                              } catch (Exception ex) {
                                     throw new Exception("Problem retrieving JCO.Function object.");
                      public void disconnect_r3() {
                              mConnection.disconnect();
Code for BEAN
package com.lti.portal;
import java.io.Serializable;
public class Conn_R3 implements Serializable {
     public String answer;
     public void setans(String a)
          answer=a;
    public String getans()
         return answer;
Code for JSP
<%@ taglib uri= "tagLib" prefix= "hbj" %>
<jsp:useBean id="myBean" scope="application" class="com.lti.portal.Conn_R3" />
<hbj:content id="myContext" >
  <hbj:page title="PageTitle">
   <hbj:form id="myFormId" >
       <hbj:textView
           id="Welcome_message"
           text="<%=myBean.getans()%>"
           design="STANDARD"  >
       </hbj:textView>
   </hbj:form>
  </hbj:page>
</hbj:content>

Hi Chetan,
Connection to R/3 systems through Portal can be done in many ways. Since you have mentioned that you are using jspdynpage then its better that you use JCo for connecting to R/3 system.
U can write the JCo code using the jspdynpage component. I hope you have pdfs related to JCO. Incase u dont have then give me you mail id. OK
Another approach could be developing a web dynpro java application that access a r/3 table using a BAPI. You can a dynpro model to easily connect to R/3 system.
Just develop an iview based on this web dynpro application. And finally navigate to this iview through your jspdynpage.
I hope this helps you in some way
Regards,
Prasanna

Similar Messages

  • Portal application connecting backend SAP R/3 system

    Hi All,
               I am developing one portal application through NWDS. It's JSPDYNPage component.The applications functionality is basicaly is to connect it to backend SAP R/3 system & fetch some data in aparticular table & display that data in a tableview format on one JSP& also when i click any row of the tableview then details of that row should get displayed on the next JSP. So i reached till develpoing a code that connnects to Backend SAP R/3.(Basicaly coding of connection part is done). Now i need to test this code, to check whether it is fine or not? NWDS doesnt give nay error, not compile also or not runtime error also. It simply shows the output as a blank page, where it is supposed to display one line of text in textview(i coded this in my JSP).But as i said it displays a blank page. i tried to debug the application , but debugging also not worked.I performed the debugging twice in right way. The code was not debugged, it run the same way as it normally runs when debugging is off & shown the blank page. I also have done all the the settings or prerequisites for debugging properly. I am stuck at this point now.search many documents , but no relevant help has been received. Can anyonehlep me with this. i am putting below the code for JSP, JSPDYNPAGE component as well as portalapp.xml. Can anyone guide me with this, whhere i am making mistake? what should i change in this?
    JSPDYNPAGE code
    package com.lti.portal;
    //import java.util.ArrayList;
    import com.sapportals.htmlb.*;
    import com.sapportals.htmlb.enum.*;
    import com.sapportals.htmlb.event.*;
    import com.sapportals.htmlb.page.*;
    import com.sapportals.portal.htmlb.page.*;
    import com.sapportals.portal.prt.component.*;
    import java.util.ArrayList;
    import com.sap.mw.jco.IFunctionTemplate;
    import com.sap.mw.jco.JCO;
    import com.sun.corba.se.internal.core.Response;
    public class Connection_R3 extends PageProcessorComponent {
    public DynPage getPage(){
    return new Connection_R3DynPage();
    public static class Connection_R3DynPage extends JSPDynPage{
    private Conn_R3 myBean = null;
    public JCO.Client mConnection;
    public JCO.Repository mRepository;
    public ArrayList al = new ArrayList();
    public String output;
    public String Ans;
    public static String BEAN_KEY="myBean";
    public void doInitialization(){
    IPortalComponentRequest request =(IPortalComponentRequest) this.getRequest();
    IPortalComponentContext context = request.getComponentContext();
    IPortalComponentProfile profile = context.getProfile();
    //create & initialize the bean.
    Conn_R3 test_bean= new Conn_R3();
    test_bean.setans("3");
    // put the bean into application context.
    context.putValue(BEAN_KEY,test_bean);
    conn();
    //IPortalComponentResponse res = (IPortalComponentResponse)this.getResponse();
    //for(int i=0;i<al.size();i++)
    //res.write(" "+al.get(i).toString());
    public void doProcessAfterInput() throws PageException {
    public void doProcessBeforeOutput() throws PageException {
    this.setJspName("Connection_R3.jsp");
    public ArrayList conn() {
    IPortalComponentRequest request =(IPortalComponentRequest) this.getRequest();
    IPortalComponentContext context = request.getComponentContext();
    IPortalComponentProfile profile = context.getProfile();
    Conn_R3 sample_bean = new Conn_R3();
    sample_bean.setans("5");
    //context.putValue(BEAN_KEY, sample_bean);
    //r3-accessing
    //connect_to_r3();
    try {
    // Change the logon information to your own system/user
    mConnection = JCO.createClient("800", // SAP client
    "********", // userid
    "******", // password
    null, // language
    "*******", // application server host name
    "**"); // system number
    mConnection.connect();
    //System.out.println(mConnection.getAttributes());
    mRepository = new JCO.Repository("ABC", mConnection);
    } catch (Exception ex) {
    ex.printStackTrace();
    System.exit(1);
    JCO.Function function = null;
    JCO.Table codes = null;
    try {
    function = this.createFunction("ZSAMPLE");
    if (function == null) {
    System.out.println("ZSAMPLE" + " not found in SAP.");
    System.exit(1);
    String num1 = "7";
    String num2 = "9";
    //String ans;
    function.getImportParameterList().setValue(num1,"My_import");
    function.getImportParameterList().setValue(num2, "My_Import");
    mConnection.execute(function);
    Object name =function.getExportParameterList().getValue(Ans);
    output=name.toString();
    sample_bean.setans(output);
    //sample_bean.setans(output)
    //al.add(name);
    //store values into strings
    //pushing of values we get from r3 into awt
    } catch (Exception ex) {
    ex.printStackTrace();
    System.exit(1);
    disconnect_r3();
    return al;
    public void connect_to_r3() {
    public JCO.Function createFunction(String name) throws Exception {
    try {
    IFunctionTemplate ft =
    mRepository.getFunctionTemplate(name.toUpperCase());
    if (ft == null)
    return null;
    return ft.getFunction();
    } catch (Exception ex) {
    throw new Exception("Problem retrieving JCO.Function object.");
    public void disconnect_r3() {
    mConnection.disconnect();
    //**********************<b>Code for BEAN</b>****************************
    package com.lti.portal;
    import java.io.Serializable;
    public class Conn_R3 implements Serializable {
    public String answer;
    public void setans(String a)
    answer=a;
    public String getans()
    return answer;
    ///////////////////////<b>Code for JSP</b>*****************************
    ><%@ taglib uri= "tagLib" prefix= "hbj" %>
    <jsp:useBean id="myBean" scope="application" class="com.lti.portal.Conn_R3" />
    <hbj:content id="myContext" >
    <hbj:page title="PageTitle">
    <hbj:form id="myFormId" >
    <hbj:textView
    id="Welcome_message"
    text="<%=myBean.getans()%>"
    design="STANDARD" >
    </hbj:textView>
    </hbj:form>
    </hbj:page>
    </hbj:content>
    /////////////////////////////////<b>Portalapp.xml</b>*****************************************
    application>
      <application-config>
        <property name="PrivateSharingReference" value="com.sap.portal.htmlb"/>
      </application-config>
      <components>
        <component name="Address_comp">
          <component-config>
            <property name="ClassName" value="com.lti.portal.Address_comp"/>
          </component-config>
          <component-profile>
          <property name="tagLib" value="/SERVICE/htmlb/taglib/htmlb.tld"/>
          </component-profile>
        </component>
      </components>
      <services/>
    </application>

    Hi,
       Do onething, please refer this <a href="http://www.i-barile.it/SDN/JCoTutorial.pdf">JCo Tutorial</a> as well as <a href="http://www.apentia-forum.de/viewtopic.php?t=1962&sid=9ac1506bdb153c14edaf891300bfde25">Link</a> also.
    Regards,
    Venkatesh. K
    /* Points are Welcome */

  • How to develop portal application connecting to SAP R/3(backend system)

    Hello Everyone,
                            Can anyone guide me on how to create portal aplication(JSPDYNPAGE), that will connect to backend SAP R/3 system, & it will fetch the data from some table from that R/3 system. Any reference material will be appriciated, it will be of great help.
    Thanks
    Chetan.

    Hi Chetan,
    Connection to R/3 systems through Portal can be done in many ways. Since you have mentioned that you are using jspdynpage then its better that you use JCo for connecting to R/3 system.
    U can write the JCo code using the jspdynpage component. I hope you have pdfs related to JCO. Incase u dont have then give me you mail id. OK
    Another approach could be developing a web dynpro java application that access a r/3 table using a BAPI. You can a dynpro model to easily connect to R/3 system.
    Just develop an iview based on this web dynpro application. And finally navigate to this iview through your jspdynpage.
    I hope this helps you in some way
    Regards,
    Prasanna

  • Portal application connect SQL Database

    Hi all,
    I'm newbie in SAP Portal. Now, I've created a new system which connects to SQL Database. Now I want to write a small portal application in Netweaver developer studio, using JSP Dynpage, and retrieve data from this SQL database. Could you please help me or show me the step by step documents to write this example ?
    Thank you very much.

    Hi Tweety,
    SAP NetWeaver Portal comes with some standard iView templates that can be used to access data stored in databases.
    Check <a href="http://help.sap.com/saphelp_nw2004s/helpdata/en/f5/eb51610e6a11d7b84900047582c9f7/frameset.htm">SAP Library</a> for more information.
    Best regards,
    Martin

  • Webdynpro application - connecting to backend system

    Hi,
    Iam developing an application in webdynpro.Iam able to generate the application in Frontend by using BAPI_BANK_GETLIST but its not taking the data from the backend system.
    Is it necssary to create the application in backend.
    Will any one please help me to sort out this.
    Thanks & Regards
    Sushma

    Hi
    To get the data from your BAPI you need to follow steps
    1. create a Model.
    2. open your data modele and add it.
    3. Map with your Controller and the View.
    4. Apply a table on your ivew
    4. Excute your BAPI.
    PS: IF data is still not pulling up from back end then you need to test BAPI on your backend ..it working fine or not
    Thanks

  • How to Connect Backend R/3 system to EP 2004S

    Hi Friends - I am new in the EP field. We have installed EP.
    We want to connect to backend R/3 system from EP.
    I have created a system for the backend R3 ECC system. But the connection test is failing.
    "Test Connection with Connector
    Results
    Retrieval of default alias successful
    Connection failed. Make sure user mapping is set correctly and all connection properties are correct."
    Also the ITS and WAS tests are also failing.
    "SAP Web AS Connection
    Results
    1. The system ID is valid
    2. Retrieval of the system was successful
    3. The system object represents an SAP system
    4. The following parameters are valid: WAS Protocol (http) WAS Host Name (mb1es1005.idcsap.com:8001)
    5. HTTP/S connection failed"
    Can you pls guide me on how to configure the same?
    1. What are the step wise configurations I have to do?
    2. Is there any configuration I have to do in the R3 system? ike RFC connections and other settings?
    3. What are the settings I have to do in the EP system?
    Pls guide me on the same.
    Thanks in advance and warm regards
    Purnendu

    Hi Maiti,
    first thing is, first try with user mapping, if you succed in this then only go for login tickets method. both are different ways to connect to R/3 systems under SSO.
    create system by selecting template for "sap system using dedicated application server".
    then add the follo parameters:
    Application host: ur FQDN for R/3 system
    Gateway host: same as Application host
    Gateway service: sapgw00
    Logon method: select Uid/PW
    Remote host type:select 3
    SAP client: enter ur SAP client (001 generally)
    SAP SID: ur SID
    SAP Sys number:00 (or 01 )
    server port: 3200
    System type: select R/3
    user mapping type: select admin/user
    validate connection: no
    (no need to set ITS and other properties they are optioal).
    this much settings are enough. Then add a system alias for your system, by going in properties and select System Aliases.
    now go in user admin, search for your current user, click on modify, click on user mappings..select your system, provide login id and password for your R/3 system.
    save it.
    Go ahead and create iVIew (Transaction iView) even though your connection test fails, it works. it will connect to ur backend R/3 system via iView without any error.
    hope this helps you...
    Regards,
    Yogesh...

  • Single Portal to connect to multiple back end ECC system

    Hi Experts,
    I want to connect existing SAP Portal 7.3 to new ECC(ECC EHP 5) System for ESS MSS.
    The requirement is that my existing backend system (ECC EHP 5 ) should also exist. i.e. I should able to use current portal to connect to existing SAP ECC System as well as new ECC System with single portal .
    Please let me know how it works in ABAP Webdynpro?
    Do let me know how this can be achieved ? Is the same portal url be used to access the 2 different backend system for ESS MSS.
    -Pravesh

    Hi Pravesh,
    for using different backend systems in the same portal, just adapt these systems in your system landscape and define your system aliases in appropriate iViews or write a DSR service.
    Pravesh Deshbhratar wrote:
    Please let me know how it works in ABAP Webdynpro?
    this mechanism is not bound to a specific programming paradigm or technology.
    regards

  • Retrieve system alias details from portal application

    Hello,
    In my portal application, I need to retrieve a system alias details.  The system is an R/3 system and I need to know its application server address, system number and client number.
    Do you know if I can achieve that using portal API?
    Thank you,
    Laurent

    Hi Laurent,
             See this thread: getting information from a system
    Retrieve system aliases from portal
    I hope first thread will solve your problem
    Regards
    Suresh

  • How to make Portal Application for connecting to SAP R/3(backend system)

    Hello  Experts,
                           I need to create a portal application that should connect to SAP R/3 & fetch some data in some table according to some input parameters provided at runtime & display the data in TABLEVIEW control.
    Anyone can guide me on this i:e- how to go about it. What things i should know or should be aware of before creating this application. Any PDF documents , any help material, any guidance about the same will be of great help.
    Thanks,
    Chetan

    Chetan,
    Webdynpro & Visual Composer ars EP Development Tools.
    If you only display BAPI data then go for Visual Composer with requires no coding So I suggest you to go for Visual Composer.
    You can also use Webdynpro Java or ABAP to display BAPI data by creating
      Adaptive RFC model.
    You will integrate Webdynpro applications into EP by creating SAP Webdynpro iView.
    *Visual Composer Documents:
    http://help.sap.com/saphelp_nw2004s/helpdata/en/a0/0af7d34a8449e2b722878ce270a747/frameset.htm
    *Webdynpro Documents:
    http://help.sap.com/saphelp_erp2005/helpdata/en/a5/1a1e3e7181b60ae10000000a114084/frameset.htm
    http://help.sap.com/saphelp_erp2005/helpdata/en/15/0d4f21c17c8044af4868130e9f
    ea07/frameset.htm
    Regards,
    <b>Ramganesan K</b>

  • Failure to connect to backend system in Portal

    Hi Experts,
    I was hoping someone could help, quickly!!
    We are having an issue with transporting our VC model.  We are on VC 7.0 SP17
    I created a model in our development environment using a variable input form and adding the value help feature.  After we deploy in our dev environment the model looks perfect!!!
    We transported the VC model as an iview through the portal and we get a Failure to connect to back end system error.  We ruled out that it is not a transport problem using the portal.
    Can someone help!! 
    Thanks so much, Anna

    Hi Again,
    Thanks for both of your response, however, there is nothing in the log files andt we still have the Application error message, failure to connect to backend system.
    We were able to bypass the error and the model starts to "semi-function" - but we cannot access the characteristic through value help, we just get empty drop downs.   We all have the proper authorization in BI....
    Do you think there is a permission problem in the back end portal?
    Hopefully you can help.
    Thanks so much, Anna

  • Connection to R/3 system from a portal application

    hi
    I am trying to connect to the R/3 system through a portal application developed in Netweaver Developer Studio.
    Please tell what all are the prerequisites for that.
    I have created an alias in the portal for the R/3 system and named it as FIN, even though my program is not working.
    Are there any setting to be done in the portal
    kindly let me know.
    thanks
    kris

    hi Vadim
    Thanks for ur fast reply, I have implemented the same code that u have mentioned.herewith I am sending u the code that I have written.
    package com.keane.connection;
    import javax.resource.ResourceException;
    import com.sapportals.connector.connection.IConnection;
    import com.sapportals.portal.ivs.cg.IConnectorGatewayService;
    import com.sapportals.portal.ivs.cg.IConnectorService;
    import com.sapportals.portal.prt.component.AbstractPortalComponent;
    import com.sapportals.portal.prt.component.IPortalComponentContext;
    import com.sapportals.portal.prt.component.IPortalComponentProfile;
    import com.sapportals.portal.prt.component.IPortalComponentRequest;
    import com.sapportals.portal.prt.component.IPortalComponentResponse;
    import com.sapportals.portal.prt.logger.ILogger;
    import com.sapportals.portal.prt.runtime.PortalRuntime;
    public class SimpleSapConnection extends AbstractPortalComponent {
      public void doContent(IPortalComponentRequest request, IPortalComponentResponse response) {
         IPortalComponentContext myContext = request.getComponentContext();
         IPortalComponentProfile myProfile = myContext.getProfile();
         // get the default_logger
         ILogger logger = request.getLogger();
         logger.info("SimpleSapConnection: default logger initialized");
         String sapsystem = myProfile.getProperty("SystemIdentifier");
         response.write("SimpleSapConnection: the SystemIdentifier is: " + sapsystem + "<br>");
         IConnection connection = null;
         logger.info("Start to get a Connection to R/3");
         try {
           // get the Connector Gateway Service
           IConnectorGatewayService cgService = (IConnectorGatewayService) PortalRuntime.getRuntimeResources().getService(IConnectorService.KEY);
           if (cgService == null) {
              logger.severe("SimpleSapConnection: Error in get Connector Gateway Service");
              response.write("Error in get Connector Gateway Service <br>");
           try {
              connection = cgService.getConnection(sapsystem, request);
           } catch (Exception e) {
              logger.severe("SimpleSapConnection: Connection to SAP system failed");
              response.write("Connection to SAP system failed <br>");
           } finally {
              // !!!!Important! Connection pooling will not work if the connection object is not closed!!!
              // Next statement needs to be inlcuded in your coding always,
              // otherwise connections won't be reused.
              if (connection != null) {
                try {
                   connection.close();
                } catch (ResourceException e) {
                   e.printStackTrace();
           if (connection == null) {
              logger.warning("SimpleSapConnection: Connection is null");
              response.write("Connection is null <br>");
           } else {
              logger.info("SimpleSapConnection: Connection succesful");
              response.write("Connection succesful");
         } catch (Exception e) {
           logger.severe("SimpleSapConnection: Exception thrown" + e);
           response.write("Exception thrown" + e);
    I have created an R/3 system in the portal and named it as FIN with the same alias name as FIN.
    U please tell me what are the other things that we have to do in respect to get connection to R/3, how to configure the R/3 system in the portal and also in the NWDS.
    And also the portalapp.xml file i have created
    <?xml version="1.0" encoding="utf-8"?>
    <application>
      <!THIS FILE IS A COPY OF THE ORIGINAL VERSION STORED IN THE PCD. PLEASE DO NOT CHANGE IT!>
      <application-config>
        <property name="SharingReference" value="com.sap.portal.htmlb,      com.sap.portal.ivs.connectorservice, com.sap.portal.usermanagement,       com.sap.portal.usermapping, landscape"/>
        <property name="releasable" value="true"/>
      </application-config>
      <components>
        <component name="SimpleSapConnection">
          <component-config>
            <property name="ClassName" value="com.keane.connection.SimpleSapConnection"/>
            <property name="SafetyLevel" value="no_safety"/>
          </component-config>
          <component-profile>
            <property name="SystemIdentifier" value="FIN"/>
          </component-profile>
        </component>
      </components>
      <services/>
    </application>
    what I feel is that there is something wrong with the system I have created in the portal
    thanks
    krish

  • Could not connect to backend system through portal via Web Dispatcher

    Web dispatcher redirecting problem
    Dear Experts,
    I have implemented a scenario which comprised of customizing that is developed in Portal EP7. What customizing does is getting report from backend system (ERP 6.0)
    According to the needs for reaching the portal from internet I configured the SAP Web Dispatcher in the environment as you may see its contents below.
    The problem is when I run the customizing in portal system then it requires connecting to backend system (ECC 6.0) to get the data (report). But from this point on web browser comes to a blank page, could not view the data that is from backend system via portal. Because in the time when it tries to retrieve data in backend system, on the left bottom of the explorer the indicator shows internet address that system uses connecting to the backend system as local network address of the backend system which is not known in internet therefore I get blank page.
    The question is how to configure the web dispatcher in a way that both portal and backend systems could be reachable from internet?
    Contents of profile file of Web Dispatcher as;
    SAPSYSTEMNAME = WDP
    SAPGLOBALHOST = portald
    SAPSYSTEM = 02
    INSTANCE_NAME = W02
    DIR_CT_RUN = $(DIR_EXE_ROOT)\$(OS_UNICODE)\NTAMD64
    DIR_EXECUTABLE = $(DIR_CT_RUN)
    Accesssability of Message Server
    rdisp/mshost = portald
    ms/http_port = 8101
    Configuration for medium scenario
    icm/max_conn = 500
    icm/max_sockets = 1024
    icm/req_queue_len = 500
    icm/min_threads = 10
    icm/max_threads = 50
    mpi/total_size_MB = 80
    SAP Web Dispatcher Ports
    #icm/server_port_0 = PROT=HTTP,PORT=81$$
    SAP Web Dispatcher Ports
    icm/server_port_0 = PROT=HTTP,PORT=60000
    icm/HTTP/redirect_0 = PREFIX=/, TO=/irj/index.html
    icm/HTTP/redirect_0 = PORT=50000
    #maximum number of concurrent connections to one server
    wdisp/HTTP/max_pooled_con = 500
    wdisp/HTTPS/max_pooled_con = 500
    Configuration for medium scenario
    icm/max_conn = 500
    icm/max_sockets = 1024
    icm/req_queue_len = 500
    icm/min_threads = 10
    icm/max_threads = 50
    mpi/total_size_MB = 80
    Regards,
    Ali Taner

    Hi,
    To resovle this you must have registered FQDN for your backend system as well. When you call the report from Portal using internet it should call that FQDN of your backend system then DNS will resolve this & you will get the expected page. This way only you can resolve this issue.
    Thanks,
    Sachin Sable

  • Problem Create System Object in the Portal for connecting CRM abap

    Hi, i creating system in the portal (JCX) for connecting system ABAP CRM (CRX), after create system try run test connection and show messages error:
    Test Connection with Connector
      Test Details:
    The test consists of the following steps:
    1. Retrieve the default alias of the system
    2. Check the connection to the backend application using the connector defined in this system object
      Results
    Retrieval of default alias successful
    Connection failed. Make sure that Single Sign-On is configured correctly
    In the logs the portal (NWA) show messages:
    Failed in creating the JCO Connection.
    The logs operation system (log Security_audit.log)
    Error> occured  >Thu Jun 23 11:34:41,278<RfcException: message: 'mshost' missing  Return code: RFC_INVALID_PARAMETER(19  Return code: RFC_INVALID_PARAMETER(19)    error group: 101 key: FC_ERROR_PROGRAM
         at com.sap.mw.rfc.api.RfcOptions.checkParameters(RfcOptions.java:438)
         at com.sap.mw.rfc.api.RfcApi.RfcOpen(RfcApi.java:688)
         at com.sap.mw.jco.MiddlewareJRfc$Client.connect(MiddlewareJRfc.java:1079)
         at com.sap.mw.jco.JCO$Client.connect(JCO.java:3256)
    Plase help, any idea?

    message: 'mshost' missing Return
    During the System Object Creating in System Landscape, there is any entry as Message Server Host: CRM MS HOST
    and Message Server Port : sapmsSID and add this entry in etc/services --> bottom samsSID 36NN/tcp where NN is instance number.
    Try this and let me know.
    Thanks
    SM

  • Creating a portal application(portal component) that connects to SAP R/3.

    Hello Everyone,
    I need to create a portal application that should connect to SAP R/3 & fetch some data in some table according to some input parameters provided at runtime & display the data in TABLEVIEW control.
    Anyone can guide me on this i:e- how to go about it. What things i should know or should be aware of before creating this application. Any PDF documents , any help material, any guidance about the same will be of great help.
    Thanks,
    Chetan

    Hi Chetan Deshpande
    package com.systechi.jspdynpages.tableapplication;
    import com.sap.mw.jco.IFunctionTemplate;
    import com.sap.mw.jco.JCO;
    import com.sapportals.htmlb.InputField;
    import com.sapportals.htmlb.event.Event;
    import com.sapportals.htmlb.event.TableNavigationEvent;
    import com.sapportals.htmlb.page.DynPage;
    import com.sapportals.htmlb.page.PageException;
    import com.sapportals.portal.htmlb.page.JSPDynPage;
    import com.sapportals.portal.htmlb.page.PageProcessorComponent;
    import com.sapportals.portal.prt.component.IPortalComponentContext;
    import com.sapportals.portal.prt.component.IPortalComponentProfile;
    import com.sapportals.portal.prt.component.IPortalComponentRequest;
    public class TableApp extends PageProcessorComponent {
          public DynPage getPage(){
                  return new TableAppDynPage();
        public static JCO.Client mConnection;
        public static class TableAppDynPage extends JSPDynPage{
              private TableBean myTableBean = null;
              private int visibleRow = 1;
              int flag=0;
              String inf1,inf2;
              public static JCO.Client mConnection = null;
              public static JCO.Repository mRepository = null;
              public static JCO.Function function = null;
              private String name1,name2;
             public void doInitialization(){
                    IPortalComponentRequest request = (IPortalComponentRequest) this.getRequest();
                    IPortalComponentContext myContext = request.getComponentContext();
                    myTableBean = new TableBean();
                    myContext.putValue("myTableBean", myTableBean);
                    mConnection = JCO.createClient("200",
                                                         "jbabu",
                                                         "sy5tech!",
                                                         "EN",
                                                         "10.5.5.33",
                                                         "00");
                   mConnection.connect();
                   mRepository = new JCO.Repository("myRep",mConnection);
                   IFunctionTemplate ft = mRepository.getFunctionTemplate("BAPI_BANK_GETLIST");
                   function = ft.getFunction();
                   setJspName("Input.jsp");
        public void doProcessAfterInput() throws PageException {
                    IPortalComponentRequest request = (IPortalComponentRequest) this.getRequest();
                    IPortalComponentContext context = request.getComponentContext();
                         myTableBean = (TableBean) context.getValue("myTableBean");
                   try{
                       InputField myInputField1 = (InputField) getComponentByName("inf1");
                        if (myInputField1 != null) {
                             this.name1 = myInputField1.getValueAsDataType().toString();
                        InputField myInputField2 = (InputField) getComponentByName("inf2");
                        if (myInputField2 != null) {
                             this.name2 = myInputField2.getValueAsDataType().toString();
                   JCO.ParameterList imParam1 = function.getImportParameterList();
                   imParam1.setValue(name1,"BANK_CTRY");
                   JCO.ParameterList imParam2 = function.getImportParameterList();
                   imParam2.setValue(name2,"MAX_ROWS");
                   mConnection.execute(function);
                   JCO.ParameterList exParam = function.getTableParameterList();
                   JCO.Table table = exParam.getTable("BANK_LIST");
                   myTableBean.setName(table);
                    mConnection.disconnect();
              catch(Exception ex)
                   ex.printStackTrace();
         public void doProcessBeforeOutput() throws PageException {
                   if(flag == 1)
                      this.setJspName("OutputTable.jsp");
         public void onButtonClicked(Event event) throws PageException
                    flag = 1;       
              public void onNavigation(Event event) throws PageException
                                  TableNavigationEvent tne = (TableNavigationEvent) event;
                                       this.visibleRow = tne.getFirstVisibleRowAfter();
                                       myTableBean.setVisibleRow(new Integer(this.visibleRow).toString());
    above is my JSPDynpage  
    package com.systechi.jspdynpages.tableapplication;
    import com.sap.mw.jco.*;
    import com.sap.mw.jco.JCO.*;
    import com.sapportals.htmlb.*;
    import com.sapportals.htmlb.event.*;
    import com.sapportals.htmlb.page.*;
    import com.sapportals.portal.prt.component.*;
    import com.sapportals.portal.htmlb.page.*;
    import com.sapportals.htmlb.table.JCOTableViewModel;
    import java.io.Serializable;
    public class TableBean
              private String visibleRow = "1";
              public JCO.Table t;
              public JCOTableViewModel tableListModel = null ;
              boolean bHasData = false;
         public JCO.Table getName()
                return t;
           public void setName(JCO.Table tab)
               this.t = tab;
         public String getVisibleRow()
              return (this.visibleRow);
        public  void setVisibleRow(String visibleRow)
                this.visibleRow= visibleRow;
         public boolean hasData()
                             if (t.getNumRows() == 0)
                                   return false;
                             else
                                   return true;
         public JCOTableViewModel getTableListModel()
                     //return new JCOTableViewModel(t);
                     tableListModel = new JCOTableViewModel(t);
                          return tableListModel;
         public void setTableListModel(JCOTableViewModel tm)
                     this.tableListModel = tm;
            public void     TableBean()
    like u can fetch the data from r/3 backend system...

  • How One EP Portal will connect the 2 Different System(ECC Europe,China)

    Hi Friends,
    I have one more doubt on Multi region Functionality. Here we are using single EP Portal. Depending up on user we are able to connect to the ECC System.
    Ex: Here we are using 2 ECC Systems( ECC Europe and ECC China). In Portal ECC Europe is login into the Portal he will be able to connect ECC Europe System through ECC Europe Model data and Meta Data like as ECC China user Login into the Portal he will be able to connect ECC China System through ECC China System Model data and Meta Data.
    How can I do this work. Can you tell me. What type of coding I can write here. Please give Help.
    Regards
    VijayK

    Hi Vijay,
    Not just multiple Systems/JCos needed, you also need multiple souce objects to connect to multiple Systems/JCos.
    In your case you need multiple iView (applications), and configure them to connect to different back-end systems.
    You got to modify the Application Parameter of WD iView objects saperately to talk to different systems.
    Reason, you cannot make one application to use multiple JCo destinations at any point of time.
    Thanks,
    MS

Maybe you are looking for