cancel
Showing results for 
Search instead for 
Did you mean: 

Help: Deploying Mobile Components on the Server on NW2004s SP10

Former Member
0 Kudos

Hi All, I am a newbie.

Server and Client are in the last version, NW2004s SP10.

I am trying to Run the example: MDK_configExampleJSP.war i follow this steps using Mobile Administrator + NW20004s SP10:

1.Switch to the Archive Converter function (I convert the .war file in a .sda file using the NWA)

2. Choose Deploy SDA.

3. Select a J2EE Engine from the list or add the required J2EE Engine to the list. Choose Next.

4. Select the mobile components you want to deploy (adding them to the list first if necessary).

5. Choose Next. The system checks the mobile components and displays only those mobile components that are still valid for deployment.

6. Start the deployment process by choosing Start Deployment.

7. After the components have been successfully deployed, you can reload the mobile components immediately. Choose Reload.

Until here all is fine! The Component was sucessfully deployed.. But when a i choose reload i can't find the application! i use the search tool, with * to get all the mobile components, again i can't find the application.

So i try to repeat the deploy process and i get this error:

All selected SDAs and SCAs (MDK_configExampleJSP.sda in my case) have already been deployed before.

So the MDK_configExampleJSP.sda application appears to be deployed!!

Them i try to export & run the application from the NW developer estudio and i get this error:

Application 'MDK_configExampleJSP' is not registered; upload application to SAP Web Console

Please some tips!

Best Regards,

Erick Ilarraza

Accepted Solutions (0)

Answers (1)

Answers (1)

Former Member
0 Kudos

Hi,

please check the reload configuration in ABAP and J2EE Stack:

http://help.sap.com/saphelp_nw2004s/helpdata/en/b0/9f9a4271c80a31e10000000a1550b0/frameset.htm

Ensure that calls in both directions are possible (especially user/password is valid). As well you could have a breakpoint in the Function Module MEMGMT_MCD_GET_FROM_J2EE.

In there a rfc call is issued to the J2EE, check that the return code is not an error code!

Rgds Thomas

Former Member
0 Kudos

Hi Thomas,

During the Installation process i do all this steps:

1 Create the JCo RFC connection in the J2EE

2 Create RFC connection in the ABAP stack

3 Register RFC connection

I don't understand this part (i am not only newbie in Mobile, them in SAP).

Ensure that calls in both directions are possible (especially user/password is valid). As well you could have a breakpoint in the Function Module MEMGMT_MCD_GET_FROM_J2EE.

In there a rfc call is issued to the J2EE, check that the return code is not an error code!

In any case, when i choose reload, there is no any Error, only that i can't see the deployed application.

Best Regards,

Erick Ilarraza

Former Member
0 Kudos

HI,

the reload process is a bit complex. What happens:

You deploy your SDA on the SDM of the J2EE. From this deployment in the ABAP Stack MCDs need to be created which in turn can be displayed in the NWMA on the J2EE.

So when you click reload the J2EE calls the ABAP Stack (the report MEMGMT_MCD_GET_FROM_J2EE is called) which itself calls the J2EE to read all deployed Mobile COmponents from the SDM. The report creates the MCDs which later can be displayed in the NWMA.

So in your case the I expect that the ABAP Call to the J2EE does not work. The report does not throw an error but just expects that there are no new MCDs in the J2EE. Therefore you do not get an error.

This is the actual coding:

CALL FUNCTION 'MEMGMT_MOBILE_CONTAINER_UPLOAD'

IMPORTING

e_return = lt_return.

-


> in 'MEMGMT_MOBILE_CONTAINER_UPLOAD-->

CALL FUNCTION 'MEMGMT_MOBILE_CONTAINER_SYNC'

DESTINATION ls_j2ee_rfc_dest-j2ee_rfc

TABLES

e_prop_list = lt_memsd_prop[]

e_dep_list = lt_memsd_dep[]

e_cust_list = lt_memsd_cust[]

e_head_list = lt_memsd_head[]

EXCEPTIONS

not_found = 1

internal_error = 2

OTHERS = 3.

DELETE ADJACENT DUPLICATES FROM lt_memsd_prop.

DELETE ADJACENT DUPLICATES FROM lt_memsd_head.

As you see if exceptions occur the report does not care about them. So may execute the report in the debug mode and check whats the value of sy-subrc after the call to this function.

Rgds Thomas

Former Member
0 Kudos

Hi Thomas,

I resolved the problem, with this 2 transactions:

MCD,

MI_MCD

The reason appears to be that i don't has the MCD for the applications, so using the same NAME, VERSION it works!! in the sense that when a choose reload, the application appears in the Mobile Components.

I am trying to run the application now, so a need to configure the Hierarchy Users / Devices, i am a little confused with this.

At the end, when i try to Syncronize the MI Client a get:

Synchronization completed

No applications are installed yet on your device; choose 'Synchronize' to install your applications.

I will search in the Forum and SAP Help how to configure the applicacionts. Thanks a lot for your help!

Best Regards,

Erick Ilarraza

Former Member
0 Kudos

Hi Erick,

you worked in the wrong direction. You have to reload the MCDs from the J2EE to e.g. set the download location for hte war file. If you create the MCD manually with these transactions the info is not present in the MCD and so not download/installation is possible. So check why the reload does not work, e.g. RFC Destination in the R/3, call from ABAP to J2EE and so on.

Rgds THomas

Former Member
0 Kudos

Hi Thomas,

I am really confused, for example: Supposed that i program an application (app1.war) and i want to run it. What i have to do? Please see if these are the Steps:

1.- Create the MCD files with the MCD and MI_MCD transaction (that will be called app1)

2.- Using the NWA -> Mobile Archive Converter to generate the file app1.sda from app1.war.

3.- Deploy the app1.sda file using the SDA/SCA Deployment button (NWA -> Mobile Archive Converter -> Button)

4.- To assign the app1 Mobile Component to a user in the Hierarchy, supossed that this user is called "erick" and the group is called "ferrari", and this user "erick" has the Device "<b>MOBILE_00001</b>" assing to it.

5.- In the MI Client login as "erick", (In the settings of the MI Client, at the end you can see: Device ID: F25..... and Device Name: "<b>MOBILE_00001</b>" ) using as Synchronization Password the same password of the "erick" that was define in the Hierarchy Group "ferrari" for user "erick".

6.- When synchronization is Successfully the "app1" will run on the MI Client. The server will install the application on the MI Server.

That is all the process to run an application??

Best Regards,

Erick Ilarraza

Former Member
0 Kudos

HI Erick,

hope we can clearify his topic a bit.

How does deployment in MI work:

When you assign a application to a device (directly or via a hierarchy group) and the device synchs the next time, the device send its local registry (which apps are installed for whom...). THe MW takes this registry and compares it with the deployment definition for this device. If somethings missing a installation command for a mobile component is sent to the device. It contains app name, etc... and the download link for theat mobile component.

All this info is taken from the Mobile Component Descriptor (MCD).

How is the MCD created: You can either create it manually (using transaction MI_MCD) or automatically using the reload function. (where do you get the link from? Its not available somewhere in the system as the standard path is to use the reload function, but you can construct it yourself based on the server name, port, the mobile component servlet and the MCD Name/Version)

When creating it manually you have either to enter the download link manually or insert it by updating the MCD from the SDM using the reload function.

What you can do is to check in NWMA -->Mobile Components for your MCD if there is download link available ajnd if you receive a file when you past it into your browser.

So the easiest way to get the download link is to have it generated using the reload functionality of NWMA. Therefore the reload process needs to be checked!

Rgds Thomas

Former Member
0 Kudos

Hi Thomas,

Thanks a lot for your help.

See when a search in NWA -> Mobile Infrastructure -> Mobile Components:

Details of the selected mobile component

[Expand tray - SAPUR_TY_BTNC_TUT]

Driver Selection Tool

Name: MDK_CONFIGEXAMPLEJSP

Description: PROGRAMA DE EJEMPLO (Example Program)

Version: 0.1

Application Type: APPLICATION

Build Number: NO VALUE

Runtime: JSP

Link to SAP MI Homepage: yes (there is a check, but there is not any url)

Type | Path

LOCALPATH | NO VALUE

WEBPATH | NO VALUE

WEBSERVER | NO VALUE

When a click on the the Driver Selection Tool i get this Warning:

<b>The selected mobile component could not be found</b>

-


On the other hand i review again this 3 Steps:

1 Create the JCo RFC connection in the J2EE

2 Create RFC connection in the ABAP stack

3 Register RFC connection

I have a Problem in the Second Step:

Set Up an RFC Connection in the ABAP stack (SM59), since when a try to Test the RFC connection (Connection Test Button): I get:

Action | Result

Logon | Connection Error

Error Details | <b>Error when opening an RFC connection</b>

And when a try to test the Unicode (Unicode Test Button) I get: <b>Error when opening an RFC connection</b>

I them use the RELOAD function (is the one in the NWA? NWA -> Mobile Infrastructure -> Mobile Components -> RELOAD Button) but it appears to do nothing.

I understand more or minus how the MI works, but at the end i can't run mobile applications, i only can Synchromize the MI client with the server, but the Client does not Reconized the Mobile Component that i Install in the server throught the deploy SDA process.

Maybe you can see some Error in the configuration of the RFC destination (SM59):

I follow the help steps:

1. Log on to the server and start the transaction SM59.

2. Select TCP/IP Connections and choose Create.

3. Specify a new name for the connection.

4. Enter T as the connection type, enter a description, and save your entries.

5. Move to the Technical Settings tab page and select the Registered Server Program indicator.

6. Enter MEMGMT_MOBILE_CONTAINER_SYNC as the program ID.

7. Enter the same values for the gateway and host as you did when you set up the connection to the J2EE. (I am using the same values).

8. Set the Unicode or Non-Unicode indicator on the MDMP & Unicode tab page.

9. If required, you can define the SNC options on the Logon & Security tab page. (I do nothing here).

10. Save your entries.

Maybe somebody had the same problem, is important to tell you that until this moment there isn't any Backend system, I only have the MI Client + NW20004s. I am planning to connect to a MM system, but i think that this is no necesary to run this example...

Best Regards,

Erick Ilarraza

Former Member
0 Kudos

Hi,

<i>Type | Path

LOCALPATH | NO VALUE

WEBPATH | NO VALUE

WEBSERVER | NO VALUE</i>

This indicates that no application file is attached to the MCD.

<i>And when a try to test the Unicode (Unicode Test Button) I get: Error when opening an RFC connection</i>

This indicates that ABAP is not able to call the Java Service to read the MCDs. SO check that the RFC Call is possible.

a) Check is the JCO RFC is setup correctly in the Visual Admin (user, etc)

b) Check is the RFC is correct (name of registerd program etc.)

If this call is possible you should be able to reload the MCDs.

Rgds Thomas

Former Member
0 Kudos

Hi Thomas,

I resolved the RFC connection problem, what i do (this is Not explain in the help! or a least i don't saw it):

SM59 -> TCP/IP connections -> Double click in the connection Name, View/Changed button.

-> Technical Settings Tab and Select: Registered Server Program.

Them when a test the connection it Works.

On the other hand:

Check is the JCO RFC is setup correctly in the Visual Admin (user, etc)

/usr/sap/XXX/InstancesName/j2ee/admin/go.bat

Server -> Services -> JCo RFC Provider, bundles tab:

RFC destination:

Program_Id: MEMGMT_MOBILE_CONTAINER_SYNC

Gateway Host: erick (NW2004s machine name).

Gateway service: saphgw01

...

...

...

<b>Repository:</b>

Application server host: R3 SERVER (this is the SAP/R3 4.70 server! <b>is correct this configuration?</b> this is the Backend system)

....

...

User: I create the same user, eilarraza, this is in the NW2004s too, and it has SAP_ALL.

....

The service is up and Running.

-


The MCD file:

here i think is the problem, as you say i don't have this:

LOCALPATH | NO VALUE

WEBPATH | NO VALUE

WEBSERVER | NO VALUE

I Saw this information in this Thread (), but a can't understand it:

If the application is based on JSP, the application archive is copied to <MI root>/webapps. The archive of an AWT application is

copied to <MI root>/libs.

SETUPFILES WEBSERVER http://<server>:<port>;

SETUPFILES LOCALPATH C:\SAPmi\<MCD>.war

SETUPFILES WEBPATH /me/pub/meapps/jsp/<version>_<MCD>.war

In another thread () i saw:

if your archive is located at

http://myotherserver:80/archive/myapplication.war

your entry will be:

WEBSERVER: http://myotherserver:80

WEBPATH: /archive/myapplication.war

So i install apache, and the file is accesible by: http://erick:80/MDK_configExampleEvent.war

Them i used:

WEBSERVER: http://erick:80

WEBPATH: /MDK_configExampleEvent.war

After when a log in in the NWA -> Mobile Components -> Driver Selection Tool.

I get the <b>error:</b>

The selected mobile component http://erick:80/MDK_configExampleEvent.war could not be found

In any case this is my configuration:

hostname: erick

OS: server 2003

Abap + Java + NW2004s SPS10

NWA: http://erick:50100/NWA

Best Regards,

Erick Ilarraza

Former Member
0 Kudos

Hi,

actually here (http://help.sap.com/saphelp_nw2004s/helpdata/en/b0/9f9a4271c80a31e10000000a1550b0/frameset.htm) it is stated that the rfc needs to have setting for registered server programm:

Move to the Technical Settings tab page and select the Registered Server Program indicator.

So if the rfc works you now can reload the MCDs from the J2EE into ABAP, which will create the download path inside your MCD!

Rgds Thomas

Former Member
0 Kudos

BTW: May check out ths HowTo Guide with a lot of screenshots. It explains how to setup Mobile!

https://www.sdn.sap.com/irj/sdn/go/portal/prtroot/docs/library/uuid/00d98222-9e87-2910-9fbb-f4e6359d...

Rgds Tom

Former Member
0 Kudos

Hi Thomas,

Thanks a lot for your help!

Best Regards,

Erick Ilarraza

Former Member
0 Kudos

So does it work now? If so:

CONGRATULATION!

Former Member
0 Kudos

Yeah!!

See i run this example: /MDK_CONFIGEXAMPLEEVENTJSP.war

Hello. I am a Mobile Infrastructure Client application. Who are you ?

Your Name ?

-


Welcome Binford. Here is some information about your Mobile Infrastructure Client installation:

Environment Value

Operating system Windows XP

VM vendor Sun Microsystems Inc.

MI runtime TOMCAT

MI folder C:\Archivos de programa\SAP Mobile Infrastructure

MI main version 70100

MI build 200610241749

MI version info MI 70 SP 10 Patch 0 Build 200610241749

MI home URL http://localhost:4444/

Current user EILARRAZA

I will to try to do a newbie survival guide! did you think it can work? The idea is to put some tips...

Really thanks a lot to <b>you</b>, <b>Sivakumar</b> and <b>Jo</b> (the one of the BLOG) to help people on this forum.<b></b>

Best Regards,

Erick Ilarraza

PD: This is the only one example that i run until now.. I will try with the others...