Skip to Content

External definitions - NW BPM

Aug 17, 2017 at 08:21 PM


avatar image

I am importing the service interfaces that is based on external definition. When I import the Service interface, I get a folder Empty Namespace (under Data types) AND all the data types are created under it...

After creating the process in Process Development perspective, when I try to deploy my DC, I get the following error.

aused by: java.lang.IllegalArgumentException: Could not read or parse schema: ParseError at [row,col]:[1,204]

I am not able to figure out if this is related to the external definition. I see that it is possible to import External definition to NW BPM. How do I import External definition. We are on 7.5 sp 0.



10 |10000 characters needed characters left characters exceeded
* Please Login or Register to Answer, Follow or Comment.

3 Answers

Manoj K Aug 18, 2017 at 05:32 AM

Hi Krish,

You can click on your imported external definition which is present in Empty Namespace and then assign Namespace and prefix for that then save it . Then you can see the object is moved to your actual namespace given.



nwds.png (109.0 kB)
Show 4 Share
10 |10000 characters needed characters left characters exceeded

Thanks Manoj!

I have two external definition in my scenario. I was able to move one to the namespace, but second one failed (could not import wsdl document ; Invalid xml schema for namespace"

Do you think the above deploy error is due to the use of external definition? And is it must to move it to namespace (instead of being under empty namespace)?

Also do I need to import external definitions separately ? Currently everything is imported when I import service interface.


Invalid xml schema for namespace : this is because the prefix which you mention in General tab is not the prefix defined in your XSD structure , check what is the prefix and mention the same one in General tab.

You may even try manually importing the external definition and use it.


Thanks! I was able to get the data types assigned to the namespace.. While deploying I am now getting an error with the trigger defined on the start event (based on the inbound message).

Caused by: JAR entry META-INF/wsdl/*name/ not found in /usr/sap/XXX/J00/j2ee/cluster/server0/temp/deploy/

I am wondering if my external definition (highlighted xml:lang) is causing the issue. This is part of the definition that I suspect is causing all my issues. How do I circumvent this issue.

<xsd:complexType name="contactName">
<xsd:element name="FreeFormText" type="FreeFormText" />
<xsd:complexType name="FreeFormText">
<xsd:extension base="xsd:string">
<xsd:attribute ref="xml:lang" />


As I indicated, when I changed my external definition to remove the reference to

<xsd:attribute ref="xml:lang"/>, I was able to deploy.

Is there any way to overcome this issue? I presume I have to import definition?

Anirudh Vyas Aug 23, 2017 at 02:35 AM

1. Export your ED as WSDL,

2. Give your namespace as targetNamespace in the root and schema nodes.

3. Import it again as ED.

Show 3 Share
10 |10000 characters needed characters left characters exceeded


I was able to work around the empty namespace issue.

In our external definition, we have xml:lang attribute which appears to cause error while deploying JAR entry META-INF/wsdl/*name/ not found in /usr/sap/XXX/J00/j2ee/cluster/server0/temp/deploy/

The way wsdl for my interface and the XSD file schema that is created.

This is how my external definition appears.

If I remove the xml:lang attribute and the import statements from wsdl it works .. but when it is there, it gives an errormesage! Even just removing the xml:lang is not enough, I need to remove the import statement..

grpqs.png (5.4 kB)
6llz4.png (28.8 kB)
cwdbq.png (7.4 kB)

Hi Krish,

Nice to know.

I too have encountered the exact same issue. I just removed the damn field. :-)

The issue is presence of xml:lang attribute automatically sets the xml as the target namespace and overrides our setting.


Anirudh Vyas


Thanks Anirudh! Will try removing the tag and see if there are any issues with the payload.

Raghuraman S Aug 22, 2017 at 03:19 PM

In the message type define namespace then wrap it in to service interface and then try importing the SI wsdl and check.

10 |10000 characters needed characters left characters exceeded