cancel
Showing results for 
Search instead for 
Did you mean: 

WDWSModelExecuteException:Exception on execution of web service with WSDL

Former Member
0 Kudos

Hi Experts,

Could you please help me out in resolving the issue which i'm facing during execution of my Model.

The error which i'm getiing is " exception com.sap.tc.webdynpro.model.webservice.api.WDWSModelExecuteException: Exception on execution of web service with WSDL URL 'http://usorlu109.chep.com:50000/UserAdministrationWS/Config1?wsdl' with operation 'findUser' in interface 'UserAdministrationWSVi_Document' "

I created a model with Adaptive Webservice with logical destinations.The model is working fine with one application.

I tried to consume the model into another DC which i have added as used DC to my new DC portfolio_app_dynpro . When I'm executing the modal instance in my component controller. It is throwing the above exception.

I have refered forums but they are not much help.

Could you please help me out in getting solved this issue.

I would appreciate your support in this regard and anticipating earlier response.

Regards,

B.Vishali

Accepted Solutions (1)

Accepted Solutions (1)

former_member751941
Active Contributor
0 Kudos

Hi Saleem,

It seems that after creating the adaptive web service model in your Webdynpro DC using wsdl your web service operation <b>findUser</b> interface has been changed.

After changing the methods interface of your webservice go to the Webservice configuration click on the Edit VI button then remove the existing methods first and then add the methods again and deploy the webservice.

And remove the existing model from the webdynpro and create the new model using the wsdl .'http://usorlu109:50000/UserAdministrationWS/Config1?wsdl' and do the mapping.

http://help.sap.com/saphelp_nw70/helpdata/en/9d/434b148ca54ee8a7f89f90fbab71b0/frameset.htm

Regards,

Mithu

Answers (2)

Answers (2)

Former Member
0 Kudos

Hi saleem,

Try SimpleSOAP as Default Configuration Type And recreate Webservices with

Same Name..

Regards

LakshmiNarayana

Former Member
0 Kudos

Hi Saleem,

Please send the complete stack trace from the server log.

regards

Sumit

Former Member
0 Kudos

Hi sumit,

I'm facing with the error when i have run the webservice model in my webdynpro componet controller

"Exception com.sap.tc.webdynpro.model.webservice.api.WDWSModelExecuteException: Exception on execution of web service with WSDL URL 'http://mgr33088:50000/LocWS/Config1?wsdl ' with operation 'Search' in interface 'LocWSVi_Document'"

1) I have taken a value object with the following structure :

public class LocationTO implements Serializable {

private String GlobalID;

private String Address;

private Vector objVect = new Vector();

Note: Also tried with "private ArrayList objList=new ArrayList();"

2) I have exposed this as webservice which is working fine.

3) I have created adaptive webservice model with no logical destinations by giving the webservice url.

4) I have consumed this model in Webdynpro component controller.

Here i'm getting the above error before i execute the model instance.

Note: It is working fine when I have tried with out taking the list object..

Could you please tell me whether there is any constraints in using "Array list or Vector in Webdynpro...

And also kindly advice me how should i resolve this problem.

I would appreciate your support in this regard and anticipating earlier response.

Thanks & Regards,

saleem

Former Member
0 Kudos

Hi Saleem,

there is no such constraints. just try this

copy this method in ur controller

public void traceWSInvocation( com.sap.tc.webdynpro.model.webservice.gci.WSTypedModelClassExecutable requestModel, java.lang.Exception ex )

{

//@@begin traceWSInvocation()

logger.traceThrowableT(

Severity.ERROR,

wdComponentAPI.getApplication().getDeployableObjectPart().getName(),

ex);

//if (logger.beDebug()) {

logger.fatalT(requestModel.wdGetRequestLog());

logger.fatalT(requestModel.wdGetResponseLog());

logger.fatalT(requestModel.associatedModelClassInfo().getModelInfo().toString());

logger.fatalT(requestModel.toString());

//}

//@@end

}

In ur execute method for webservice for ur request model implement this code

reqModel.wdSetInvocationLogEnabled(true);

put ur execute statements in try catch block & in catch block copy this

this.traceWSInvocation(reqModel,e);

after that run ur application & send the trace from the server log.

regards

Sumit

Former Member
0 Kudos

Hi Saleem

Now try this code

create model using "localserver"

then change the names in this code according to yours.

IWDMessageManager objMessageManager=wdComponentAPI.getMessageManager();

try {

String userId="101";

TestRetrieveModel retrieve=new TestRetrieveModel();// object for Model

Request_RetrieveByUserId obj=new Request_RetrieveByUserId(retrieve);

wdContext.nodeRequest_RetrieveByUserId().bind(obj);

RetrieveByUserId retById=new RetrieveByUserId(retrieve);//object for Method name

retById.setUserId(userId);

wdContext.currentRequest_RetrieveByUserIdElement().modelObject().setRetrieveByUserId(retById);

wdContext.currentRequest_RetrieveByUserIdElement().modelObject().execute();

String gid=wdContext.currentResponseElement().getGid();

String address=wdContext.currentResponseElement().getAddress();

ArrayList al=new ArrayList();

al=(ArrayList)wdContext.currentResponseElement().getAl();

Iterator it=al.iterator();

objMessageManager.reportSuccess("Gid= "+gid);

objMessageManager.reportSuccess("Address= "+address);

while(it.hasNext())

{

objMessageManager.reportSuccess(" "+it.next());

}

} catch (Exception e)

{

objMessageManager.reportException("Exception in init() "+e,true);

}

Regards

LakshmiNarayanaChowdary.N

Former Member
0 Kudos

Hi Narayan,

I am getting the error while executing the model object.

I am getting the error at this statement

"wdContext.currentRequest_RetrieveByUserIdElement().modelObject().execute();"

I am not able to understand why it is giving error.

But if remove the List Object from my value object and expose this as webservice and consume it as a model in WD it is working fine.

can u explore on this and give some related links regarding this.

Regards,

Saleem

Former Member
0 Kudos

Hi saleem,

It's just worked fine.. But I used ArrayList in ValueObject Class not Vector .

Check whether the statements are placed properly.

I mean in the following order.

TestRetrieveModel retrieve=new TestRetrieveModel();//object for Model

RetrieveByUserId retById=new RetrieveByUserId(retrieve);// object of methodName

retById.setUserId(userId);

wdContext.currentRequest_RetrieveByUserIdElement().modelObject().setRetrieveByUserId(retById);

wdContext.currentRequest_RetrieveByUserIdElement().modelObject().execute();

Regdards

LakshmiNarayana

Former Member
0 Kudos

Hi Narayan,

Thanks for ur Response.

I already checked by taking ArrayList in Value Object also,but its not working for me.Then only i went to Vector(becoz vector is a serializable object)

but most of the earlier replies saying that there is a problem in WD with HashMap and Vector kind of things.

I have seen the code which u have send,I am also doing the same steps which u have send.

But i am getting the error at this line wdContext.currentRequest_RetrieveByUserIdElement().modelObject().execute();

I am using Adaptive Webservice Model(with simple soap) with no logical destination

Regards,

Saleem