cancel
Showing results for 
Search instead for 
Did you mean: 

MDM4J with SP06 giving error java.lang.IllegalStateException

Former Member
0 Kudos

Hello,

I have used successfully used MDM4J with SAP MDM (SP05)5.55.42.48.

When we migrated to MDM SP06 and if I try to run my front-end application it gives me error

java.lang.IllegalStateException: Login method has not been successfully called.

Though everything works fine if I change the connection settings to point to server with SP05 installation.

Will MDM4J alone will not work with SP06 ?

Do I need to migrate to MDM Java API's for this ?

Thanks.

Regards,

Mandeep Sharma.

Accepted Solutions (0)

Answers (4)

Answers (4)

Former Member
0 Kudos

OK, I found the solution.

You should go to your Portal System configuration:

System Administration -> System Configuration

Go and display the System object that you or the Basis team configured.

One of the properties is called "Use MDM4J" and it's defaulted to "No" for SP06.

You should change its value to "Yes" and your code will work again

Regards,

Boris

Former Member
0 Kudos

Hello gurus,

I can see that there is at least 3 threads open with this issue.

Would anyone from SAP step up and explain what changed and how to solve this problem?

This used to be a working code that nobody wants to change for no reason. Perhaps we are missing a setting or something that is new to SP06 Patch 3?

Here is my code, just for your reference:

private boolean loginToRepository()

{

// @@begin loginToRepository()

boolean result = false;

IUser user;

user = this.getCurrentUser();

Locale locale = null;

// System Alias configured for the Portal MDM System

String systemAlias = wdThis.wdGetMatchingExampleController().getRepository();

try {

locale = WDClientUser.getCurrentUser().getLocale();

} catch (WDUMException ex) {

msgMgr.reportException(ex.getMessage(),false);

}

ConnectionProperties prop = null;

try {

IConnectorGatewayService cgService =

(IConnectorGatewayService) WDPortalUtils.getServiceReference(IConnectorService.KEY);

try {

prop = new ConnectionProperties(locale, user);

} catch (Exception e) {

msgMgr.reportException(e.getMessage(),false);

}

try {

connection = cgService.getConnection(systemAlias, prop);

} catch (ConnectorException e) {

msgMgr.reportException(e.getMessage(),false);

}

} catch (Exception e) {

msgMgr.reportException(e.getMessage(),false);

}

try {

INative nativeInterface = connection.retrieveNative();

catalogData = (CatalogData) nativeInterface.getNative(CatalogData.class.getName());

result = true;

} catch (Exception e) {

msgMgr.reportException(e.getMessage(),false);

}

return result;

// @@end

}

Maybe it's something easy to spot that is specific to Patch 3?

Thanks,

Boris

Former Member
0 Kudos

Hi Mandeep,

If you are using Portal System to connect with MDM, then try this :

This is a part of the release notes for SP06 Patch 3 .

New property when creating System Objects - Use MDM4J. Enabling the Use MDM4J property, gives the user the option to use the MDM4J CatalogData object.Use case - where the customer has an EP with other applications running on the MDM4J API besides the MDM standard iViews.

Best Regards,

-Prashant.

Former Member
0 Kudos

Hi,

I think it is Yes.. you will have to migrate to new MDM java API's.. in SP06.

Thanks,

Priya.