If you are already familiar with deployment concept of Mobile Infrastructure 2.5 and 7.0, you would accept the fact that one of the drawbacks in these existing releases is the absence of a mechanism to deploy Mobile Components (Applications, Patches, Add-ons etc.,) locally on to the client device.
A quick recap!!! The process of deploying Mobile Components in these releases is as follows.
- Upload the Mobile Component in either the NetWeaver Administrator or the Web Console.
- Assign the Mobile Component to the respective client devices or users.
- Synchronize the client and in-turn will download the Mobile Component and then install it (this is taken care by the client framework).
This process gets very cumbersome especially when the Mobile Application is under development and the developer needs to test the changes done on the application every now and then. Also the above process requires the need for online connectivity while developing the application (remember you need to synchronize the client).
Hence there was a need to provide a better mechanism to deploy Mobile Components onto the client device locally (especially in development environment) without having the need to perform the above mentioned steps.
NetWeaver Mobile 7.1 solves this very problem with the introduction of a concept known a Local Deployment of Mobile Components.
It is this concept which I will explain in detail in the following blog and at the end of it, I hope you will appreciate the rationale behind the introduction of this feature in Mobile 7.1
What is Local Deployment?
By now you would have already got the answer to this question. Anyway let me summarize in my own words.
Local Deployment of Mobile Components is a mechanism of deploying (installing) Mobile Components directly on the client device without the need to
- Upload the Mobile Component onto server.
- Synchronize the client (does not require online connectivity)
Architecture of Local Deployment:
The architecture behind the concept of deploying a Mobile Component locally can be summarized with the help of steps described below.
- Creation of MCD and DPI XML File for the Mobile Component:
Every Mobile Component that needs to be deployed on the client should be associated with a MCD and DPI XML file. Both the MCD and DPI XML file contains various properties of the Mobile Component that is to be consumed by the client framework at runtime.
- The MCD XML file contains the Name, Version, Type, Link Visible on Homepage, etc. of the Mobile Component
- The DPI XML file contains the Action (install, uninstall) to be performed on the Mobile Component, Actual name of the file to be deployed, etc.
Please Note: Format of the MCD and DPI XML files is out of context in this blog since the procedure is quite elaborate. I will cover the same in my future blogs.
- Copy Mobile Component files into inbox folder
- Copy Mobile Component files into inbox folder:
Once you have the MCD, DPI XML files along with the actual Mobile Component file (.war file for JSP, .sda for WebDynpro etc.) you will need to copy all these files into the “inbox” folder present under the Mobile 7.1 installation directory (“C:\Program Files\SAP\SAP NetWeaver Mobile Client\inbox”)
- Actual Deployment starts:
Start the Mobile 7.1 client and login the user. At this point the deployment of the Mobile Component would begin. Note: If you are using Mobile Laptop Client (based on WebDynpro technology), you might additionally be prompted with a UI that displays the set to Mobile Components to be deployed and the user who has logged on to the client can deploy them one at a time.
Integration with SAP NetWeaver Developer Studio:
Do you feel the above steps and jargons are a little cumbersome for a developer? Well!!! So does the SAP Mobile Development Team.
The entire process of Local Deployment is completely integrated into the standard development environment of SAP NetWeaver i.e., the SAP NetWeaver Developer Studio.
With just a few clicks it is possible to perform Local Deployment without having the need to know what MCD, DPI XML files are and their format.
- If you are developing a Mobile Application for Laptops (WebDynpro) in NWDS, then you should configure your client home directory under Window -> Preferences -> Mobile -> Laptop -> Client -> Path (SAP NetWeaver Mobile Client Installation Directory)
- If you are migrating JSP or AWT applications based on ME 2.1, MI 2.5 and 7.0, then you should configure your client home directory under Window -> Preferences -> MDK -> SAP NWM Client home folder
Steps to perform Local Deployment:
- If you are developing a Mobile Application for Laptop, just right click on the actual WebDynpro application name and choose Deploy and navigate through the screens that follow.
- If you are migrating JSP or AWT applications, Navigate to Mobile Infrastructure Perspective and choose the Export -> MDK: Export project into a MI archive and navigate through the screens that follow.
Either of the above step will create the MCD, DPI XML file and also the actual file to the deployed and will also copy them onto the client inbox directory. This eliminates the need for you to know the first two steps mentioned under Architecture of Local Deployment. Once the Mobile Component is exported successfully, just perform the 3rd step mentioned under Architecture of Local Deployment.
Now the Mobile Component will be deployed on the client and the based on the type, the link on the Home Page will either be visible or not.
The next time you synchronize the client, the information about the locally deployed Mobile Component will be sent to the DOE and then the administrator will be able to see the which Mobile Component is deployed on which client device, its status, version etc.