Import the Login Module Projects in NWDS 7.3

As discusses in the Logon Language blog mentioned above, we have two projects CTSJAAS ( Java Project which has the logon module code) and CTSLogonModule (The Library project which defines the dependencies, configurations and acts as a wrapper to deploy the logon module).

1. In NWDS import the two projects into the workspace (Incase you just have the jar files and do not the project files you can just skip the import step)

2. You will notice that the CTSLogonModule (Library Project) is in error state, because the Library Project is not supported in Netweaver 7.3

 

 

3. Create an EAR Project (In My case it’s CTSLogonModuleEAR) and add dependency to the JAAS Project (In My case it’s CTSJAAS). This will add a reference to the CTSJAAS.jar in the EAR Project and the jar will be deployed along with the ear.

 

 

4. Create a XML file with the name LoginModuleConfiguration.xml in the folder META-INF. Please note that the name has to beLoginModuleConfiguration.xml for the engine to recognize the ear as login module.

Please refer to SAP Help link Managing Logon Modules for more details.

5. Now your project structure should look like below:

 

 

6. Edit the LoginModuleConfiguration.xml and add below mentioned code. Adjust according to your own class name.

<login-modules>
<login-module>
<display-name>CTSLogonModule</display-name>
<class-name>com.cts.jaas.Ctsjaasimpl</class-name>
<description>CTSLogonModule</description>
</login-module>
</login-modules>

 

7. Edit the application-j2ee-engine.xml and adjust accordingly. As you can notice we are adding references to the libraries here. We used to add this in provider.xml of the library project in NW 7.0. Also notice the difference in the use of reference tag in the two xml files.

<?xml version=”1.0″ encoding=”UTF-8″?>
<application-j2ee-engine xmlns:xsi=”http://www.w3.org/2001/XMLSchema-instance”
xsi:noNamespaceSchemaLocation=”application-j2ee-engine.xsd”>

<reference reference-type=”hard”>
<reference-target provider-name=”sap.com” target-type=”library”>com.sap.exception</reference-target>
</reference>
<reference reference-type=”hard”>
<reference-target provider-name=”sap.com” target-type=”library”>com.sap.tc.Logging</reference-target>
</reference>
<reference reference-type=”hard”>
<reference-target provider-name=”sap.com” target-type=”library”>j2eeca</reference-target>
</reference>
<reference reference-type=”hard”>
<reference-target provider-name=”sap.com” target-type=”interface”>security_api</reference-target>
</reference>
<provider-name>cts.com</provider-name>
</application-j2ee-engine>

 

Deploy the Login Module

I am assuming that you have maintained the SAP AS Java in NWDS and have required authorizations for deployment.

1. Export the SAP EAR file and store it inside the ear project.

 

 

2. In NWDS Go to Window->Show View->Other. Type Deploy View in filter criteria and select Deploy View

3. In Deploy View add CTSLogonModuleEAR to the list of Workspace Deployable archives.

 

4. In Deploy View right click on the archive and select Deploy.

5. After successful deployment NWDS will confirm that, archive has been deployed successfully.