Tuesday, June 10, 2008

Web Dynpro ABAP URLs and Namespaces

When you use your own Namespaces (see also Reservation of Namespaces) there are some peculiarities to note with regard to the paths in the ICF Internet service tree and in the MIME repository.


When creating your own name spaces follow the rules set out in Defining Naming Conventions.

Normally a Web Dynpro application is created in SE80 either in the SAP namespace using its simple name, for example, myapp, or in a customer namespace using the complex name specification, //, for example, /test40p/myapp. Accordingly, the ICF path is under both /sap/ and your own namespace, as in the examples below:

Examples

Application name

ICF Path

myapp

/sap/bc/webdynpro/sap/myapp

/test40p/myapp

/sap/bc/webdynpro/test40p/myapp

If the ICF path hierarchy in the SAP namespace (/sap/bc/webdynpro/sap/myapp) or in the customer namespace (/sap/bc/webdynpro/acme/myapp) is too long-winded, you can create the customer namespace to the highest level directly below the default host. (/acme/webdynpro/myapp). To do this the following prerequisites must be met:

* The relevant highest-level node in the ICF and for the subnode webdynpro must be created for the respective namespace (see Creating and Configuring the ICF Service.)

For the webdynpro subnode the HTTP Request Handler CL_WDR_MAIN_TASK must be defined in the handler list.

For this subnode the System Logon must also be configured. As soon as this has been configured, the system logon is automatically available for all subnodes of webdynpro.

If applications already exist under the long ICF path, they have to be moved accordingly:

○ For all existing applications under the old path, new application nodes have to be created manually in the ICF under the new path: /acme/webdynpro/myapp1.

○ Then you should delete path /sap/bc/webdynpro/acme/together will all the subapplications.

* In addition, the folder for the namespace and a subfolder for webdynpro must be set up in the MIME Repository

If there are images belonging to existing applications in the corresponding path, they have to be moved.

Once these prerequisites are met, the ICF path is on the highest level, as shown in the example below:

Examples

Application name

ICF Path

/1wda/myapp

/1wda/webdynpro/myapp

/acme/myapp

/acme/webdynpro/myapp


Preparatory Settings

So that the Web Dynpro runs smoothly in a customer namespace, you need to make the following settings:

...

1. Start the ICF in transaction SICF.

2. Create a new root node for your namespace, (for example, /acme) in the service tree directly under the default host.

Note that you only enter and save the name here.

3. Below your new root node create a subnode with the name webdynpro. The path is then /acme/webdynpro.

Note that the name of the subnode must be webdynpro(without any spaces).

4. For the subnode webdynpro create the handler, CL_WDR_MAIN_TASK, under the register Handler List.

5. If you have existing applications that have a node under the long ICF path, for each of these old applications create a new node under the new path and delete the old path completely.

6. In the MIME repository tree create a new root node for your namespace and underneath it a subnode for webdynpro. Method CREATE_ROOT_FOLDER of class CL_MIME_REPOSITORY_API is provided for this.

In the MIME repository the path is then: /acme/webdynpro

Move existing images under the long/old path in the MIME repository to the relevant place in the new path.

Check Settings

...

1. Call transaction SE38.

2. Go to your test application.

3. Check the URL for the Characteristics of the application, whether the syntax has the following notation:
http://host.domain.ext:port/1wda/webdynpro/helloworld

No comments:

Archive