Web Service input parms
I have an XI web service I am utilizing via the Adaptive Web Service Model. This service requires that I send some input parms. I'm not quite sure how to get the parms into the request object. I reviewed the tutorial and the bugger doesn't do that via code but instead does it via mapping context to view context.
Here is my Context node in the component controller
Context
Request_SelectEmployeeTime
EmployeeTime_Select
SELECT
EMPLID
$0023SimpleContent
Response
EmployeeTime_Data
Statement_Response
Row
ATTIO_FLG
ATTNC_TS
DEVICE
EMPLID
POST_LOC
REVD_BY
REVD_TS
Code I have so far is
Request_EmployeeTime_Select_Sync_OB requestMO = wdContext.currentRequest_SelectEmployeeTimeElement().modelObject();
requestMO.wdSetInvocationLogEnabled(logger.beDebug() ? true : false);
try
wdContext.nodeRequest_SelectEmployeeTime().bind(requestMO);
wdContext.currentRequest_SelectEmployeeTimeElement().modelObject().execute();
wdContext.nodeResponse().invalidate();
wdComponentAPI.getMessageManager().reportSuccess("Executed and invalidated " + String.valueOf(wdContext.nodeRow().size()));
Any guidance is appreaciated!
Diane
Edited by: Diane Fuller on Aug 19, 2008 10:38 AM
Ok Here is what I had to do. I had to create objects for each level. Then each object had to be set into the next higher up object in my chain. Several of the objects were lists (allowing me to create several keys to make complex where clauses see http://help.sap.com/saphelp_nw04/helpdata/en/2e/96fd3f2d14e869e10000000a155106/content.htm
Request_EmployeeTime_Select_Sync_OB requestMO =
wdContext.currentRequest_SelectEmployeeTimeElement().modelObject();
EmployeeTime_Select EmployeeTime_SelectMO = new EmployeeTime_Select(model);
SELECT selectMO = new SELECT(model);
EMPLID emplIdMO = new EMPLID(model);
// TODO hardcoded person 60617
emplIdMO.set$0023SimpleContent("60617");
wdComponentAPI.getMessageManager().reportSuccess("About to get do WS for "
+ emplIdMO.get$0023SimpleContent());
listEmpl.add(emplIdMO);
selectMO.setEMPLID(listEmpl);
listSelect.add(selectMO);
EmployeeTime_SelectMO.setSELECT(listSelect);
requestMO.setEmployeeTime_Select(EmployeeTime_SelectMO);
requestMO.wdSetInvocationLogEnabled(logger.beDebug() ? true : false);
try
wdContext.nodeRequest_SelectEmployeeTime().bind(requestMO);
wdContext.currentRequest_SelectEmployeeTimeElement().modelObject().execute();
wdContext.nodeResponse().invalidate();
catch(Exception ex)
wdComponentAPI.getMessageManager().reportException(ex.getLocalizedMessage(), true);
this.traceWSInvocation(requestMO, ex);
Similar Messages
-
Missing Web Service Input Parameters
Hi,
I am creating a form on web services. The source of the webservice is BEPL.
When I register the webservice, I see the in and the out parameters.
Operations
Operation Name process
Input Parameters
Operation Parameter Name Parameter Type
process Data_source string
Data_URI string
Token string
But when I continue to create a form on the service, the next screen shows this message:
* Item Finder
Web Service Input Parameters
no data found
Any idea what may be going on here?
Thanks
-SJHello,
Are you sure it's a public webservice or that you put in the right username/password?
Also if you call the webservice just from an url, does that work for you?
Regards,
Dimitri
http://dgielis.blogspot.com/
http://www.apex-evangelists.com/
http://www.apexblogs.info/ -
Can XMLBeans validate Web Services Input Parameters in Weblogic8.1?
Hi,
I am very new to XMLBeans and Web Services. From my understanding, schemas can be used to validate an xml document.
However, I would like to find out:
1. Can I validate my web service inputs againest the generated XMLBeans objects/schema, in Weblogic 8.1?
2. How do I validate my input parameters from the web service? My input parameters include enumerations of valid values and also numeric values.
Fyi, the XMLBeans objects were generated from the schema which i created, and my web service is using these XMLBeans objects.
Great Thanks!This is crazy! Someone must have come across this problem
before.
I've simplified my question and used a much simplier method
from the web service, here goes!
::: Here's my code :::
<cfscript>
webservice = CreateObject("webservice","dummy?wsdl");
webservice.doBuildQuoteForItinerary("123456,"en_US","","1113");
</cfscript>
::: Here's the error :::
Could not perform web service invocation
"doBuildQuoteForItinerary".
Here is the fault returned when invoking the web service
operation:<br> <pre>AxisFault faultCode: {
http://schemas.xmlsoap.org/soap/envelope/}Server.userException
faultSubcode: faultString:
com.raileurope.web.ngserver.InternalErrorException:
java.lang.NullPointerException faultActor: faultNode: faultDetail:
http://xml.apache.org/axis/}hostname:dummy
</pre>
There must be something wrong with how I'm passing in the
parameters. Is it the null string??!?!?
Any help would be great! -
Can XMLBeans validate Web Services Input Parameters?
Hi,
I am very new to XMLBeans and Web Services. From my understanding, schemas can be used to validate an xml document.
However, I would like to find out:
1. Can I validate my web service inputs againest the generated XMLBeans objects/schema?
2. How do I validate my input parameters from the web service? My input parameters include enumerations of valid values and also numeric values.
Fyi, the XMLBeans objects were generated from the schema which i created, and my web service is referencing/using these XMLBeans objects to package the results to the calling class/method.
Great Thanks!This is crazy! Someone must have come across this problem
before.
I've simplified my question and used a much simplier method
from the web service, here goes!
::: Here's my code :::
<cfscript>
webservice = CreateObject("webservice","dummy?wsdl");
webservice.doBuildQuoteForItinerary("123456,"en_US","","1113");
</cfscript>
::: Here's the error :::
Could not perform web service invocation
"doBuildQuoteForItinerary".
Here is the fault returned when invoking the web service
operation:<br> <pre>AxisFault faultCode: {
http://schemas.xmlsoap.org/soap/envelope/}Server.userException
faultSubcode: faultString:
com.raileurope.web.ngserver.InternalErrorException:
java.lang.NullPointerException faultActor: faultNode: faultDetail:
http://xml.apache.org/axis/}hostname:dummy
</pre>
There must be something wrong with how I'm passing in the
parameters. Is it the null string??!?!?
Any help would be great! -
Dynamically set variable to pass to foreach loop and exec web service inputs
Hi, I'm a little lost (and new) on where to begin with this. Using SSIS 2008 r2 I've been able to create a small package to connect to a currency converter web service and
select the hardcoded supplied by a web service. However, doing it this way I would have to create multiple mini sequence containers and select the currency to and from country codes. I would like to create a user::to and user::from variable and then run a
sql task to set the variables.
Ie, select distinct( [to_countryCD], [from_CountryCD] ) from tbl_CountryCd
and then run my sequence as a forloop dynamically passing the 'to' and 'from' country codes. Any idea's would really be appreciated.First you have to save the result of
select distinct( [to_countryCD], [from_CountryCD] ) from tbl_CountryCd
into object variable. This result set will be fed to For each loop container (FELC). Inside FELC, if you need to iterate through this result set, you will have either use the input parameter method of passing the values to the exec sql task (which is inside
FELC) or build dynamic expression using SqlStatementSource property.
http://blog.boxedbits.com/archives/34
http://www.toadworld.com/platforms/sql-server/b/weblog/archive/2013/01/17/ssis-replace-dynamic-sql-with-variables.aspx
Thanks, hsbal -
Weird behaviour in web service input
Don't know whether anyone has come across something similar. If you have a simple class that e.g. calculates how many days left till a particular day, using the following code:
public class Countdown {
public static void main(String args[]) {
int daysLeft = 3;
try {
DateFormat df = DateFormat.getDateInstance();
Date home = df.parse("2004/06/18");
Date today = new Date();
long timeLeft = home.getTime() - today.getTime(); // time in milliseconds
daysLeft = (int)(timeLeft / (1000 * 60 * 60 * 24)); // time in days
} catch (ParseException p) {
p.printStackTrace();
System.out.println(daysLeft);
running this code normally produces an expected result.
BUT, if you include the code as part of a J2EE 1.4 web service (converting the main method into an ordinary method that returns an int and converting the println statement to a return statement) using the Sun AppServer, the ParseException is thrown and the date is declared unparseable: all this inside the same JVM. Does anyone have an explanation for this? Why would the String representation of the date be parseable in the one instance but not in the other??
Thanks.Thanks!
java.util.Locale.getDefault()
see
http://java.sun.com/j2se/1.4.2/docs/api/java/util/Local
.html for more details. -
Web service call problem with complex types input
We are trying to call a web service and pass as parameter
some complex types. When invoking the web service everything works
well on flex side, but on the server side the input parameters we
get from flex are not correct - complex type is removed and the
elements of the complex type are sent. See the example:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="
http://www.adobe.com/2006/mxml"
layout="absolute">
<mx:WebService id="ws_id" wsdl="link" useProxy="false"
fault="wsFault(event)">
<mx:operation id="op_id" name="op"
result="wsResult(event)">
<mx:request>
<parameters>
<parameter1>{value1}</parameter1>
<parameter2>{value2}</parameter2>
<parameter3>{value3}</parameter3>
<parameter4>
<parameter4_1>{value4_1}</parameter4_1>
<parameter4_2>{value4_2}</parameter4_2>
<parameter4_3>{value4_3}</parameter4_3>
</parameter4>
</parameters>
</mx:request>
</mx:operation>
</mx:WebService>
</mx:Application>
on server side we get this:
<parameters>
<parameter1>{value1}</parameter1>
<parameter2>{value2}</parameter2>
<parameter3>{value3}</parameter3>
<parameter4_1>{value4_1}</parameter4_1>
<parameter4_2>{value4_2}</parameter4_2>
<parameter4_3>{value4_3}</parameter4_3>
</parameters>
Instead of :
<parameters>
<parameter1>{value1}</parameter1>
<parameter2>{value2}</parameter2>
<parameter3>{value3}</parameter3>
<parameter4>
<parameter4_1>{value4_1}</parameter4_1>
<parameter4_2>{value4_2}</parameter4_2>
<parameter4_3>{value4_3}</parameter4_3>
</parameter4>
</parameters>
Any idea how is it possible to send complex type as web
service input from flex ?Hi,
I also have similar type of problem where I need to invoke a Web service with Complex input parameters.
I followed Susan's blog but I stuck at a point where methos getItem is created.
Can anyone tell me how to get that method for my requirement.
If possible can you guys share your solutions here.
Thanks in advance. -
SSIS Web Service Complex Type Inputs
Hi,
I am trying to make a call to a third-party web service in my SSIS package. The request has custom complex data type as the parameter. As has been pointed out in this forum before, the Web Service Task only lets you assign the outside parameter from a variable, not the internal parameters needed to create the complex data type.
To be more specific, the web service input wants a 'ContactSearchRequest' parameter. I can assign this from a variable. If I click on the 'value' field under the 'Input' section for the web service task, it shows me that the 'ContactSearchRequest' data type is made up of the following:
contactId - long
numResults - int
offset - int
passKey - string
searchParam - string
sortType - int
Unfortunately, I can't assign these internal parameters from a variable, at least not through the web service task interface.
My next thought was to create a variable of type 'object' and then set it in a script task prior to calling the web service task. However, I'm not sure exactly how to do this. How will my script know about the class definition of 'ContactSearchRequest'? Do I just create a class called 'ContactSearchRequest'?
I've used this same web service in a .NET C# project and after I imported the web service, visual studio knew all about the custom data types. How do I do something similar in SSIS?
Of course, the easiest solution would for Integration Service to allow me to set those internal parameters via variables, but we're apparently not there yet.
Any suggestions?
Thanks,
TreyHi All,
I am trying to pull the data from a webservice. The method expects 5 parameters out of which one is a complex type. And it is fine to pass Null value for this parameter.
The method expects a complex data type UrlReportFilter
as follows:
<simpleType name="UrlReportFilterOperatorEnum">
<restriction base="xsd:string">
<enumeration value="contains"/>
<enumeration value="starts_with"/>
<enumeration value="ends_with"/>
<enumeration value="not_contains"/>
<enumeration value="not_starts_with"/>
<enumeration value="not_ends_with"/>
<enumeration value="match_regular_expression"/>
<enumeration value="not_match_regular_expression"/>
<enumeration value="exact_match"/>
</restriction>
</simpleType>
<complexType name="UrlReportFilter">
<sequence>
<element name="caseSensitive" type="xsd:boolean"/>
<element name="operand" nillable="true" type="xsd:string"/>
<element name="operator" nillable="true" type="akaaimsdt:UrlReportFilterOperatorEnum"/>
</sequence>
</complexType>
How to assign values and use this in VB.NET code?
I am using following code to assign the values to the properties in VB.NET code in Script task but it is throwing the error below:
Dim vUrlFilter As New Akamine.UrlReportFilter With {.caseSensitive = False, .operand = ""}
Error: System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation. ---> System.Web.Services.Protocols.SoapException: AWSFault:Error in processing:(com..aws.services.exceptions.InvalidColumnException: Invalid column:
for report:H
Any help on this would be appreciated!!
Thanks,
Ruby
Thanks & Regards -
Update/insert/delete data from xcelsius to Database via web service
Hi,
I need to create dashboard that go function can <b>update/insert/delete</b> data send to <u>Database</u> thru <u>web services</u>, as i know got 2 xcelsius add-on software which support those of function <b>InfoBurst</b> and <b>flynet </b>
<b>InfoBurst</b>
http://www.infosol.com/azbocug/minutes/4-Writeback%20to%20a%20Database%20with%20Xcelsius.pdf
<b>flynet </b>
http://www.flynetviewer.com/public/community/Blogs/FlynetXcelsiusServerUser/default.aspx
Except this 2 purchase add-on xcelsius, any other solution ?
Maybe need to write some in MSSQL or C# programming which enable insert, update, delete ...etc ?
*note: i not use Xcelsius Engage Server , i use Xcelsius Engage only
thanks,
regards
s1
Edited by: Leong Pui Kee on Mar 1, 2011 6:06 AMHi,
As of now in Xcelsius/Dashboard Design there is no feature or functionality to insert/update/delete data from database.
Solution:
Create a Web service in let’s say C# or Java, which will perform insert/update/delete operation.
In Xcelsius add Web Service connection and user above web service.
Xcelsius Web Service connection provides option to pass input values to a Web Service (Input Pane) and get the result (Output values pane).
We can pass values to be written to the database as a input to Web Service via Web Service connection from Xcelsius and write data to the database.
Note:
Performing delete operation from Xcelsius Dashboard could be risky and may delete important data from database. I would not prefer giving delete option/functionality in Xcelsius dashboard.
Hope this helps!
Thank you.
Regards,
Vinay Mhaske -
We are trying to call a web service and pass as parameter
some complex
types. When invoking the web service everything works well on
flex
side, but on the server side the input parameters we get from
flex are
not correct - complex type is removed and the elements of the
complex
type are sent. See the example:
<?xml version="1.0" encoding="utf-8"?>
<mx:Application xmlns:mx="
http://www.adobe.com/2006/mxml"
layout="absolute">
<mx:WebService id="ws_id" wsdl="link" useProxy="false"
fault="wsFault(event)">
<mx:operation id="op_id" name="op"
result="wsResult(event)">
<mx:request>
<parameters>
<parameter1>{value1}</parameter1>
<parameter2>{value2}</parameter2>
<parameter3>{value3}</parameter3>
<parameter4>
<parameter4_1>{value4_1}</parameter4_1>
<parameter4_2>{value4_2}</parameter4_2>
<parameter4_3>{value4_3}</parameter4_3>
</parameter4>
</parameters>
</mx:request>
</mx:operation>
</mx:WebService>
</mx:Application>
on server side we get this:
<parameters>
<parameter1>{value1}</parameter1>
<parameter2>{value2}</parameter2>
<parameter3>{value3}</parameter3>
<parameter4_1>{value4_1}</parameter4_1>
<parameter4_2>{value4_2}</parameter4_2>
<parameter4_3>{value4_3}</parameter4_3>
</parameters>
Instead of :
<parameters>
<parameter1>{value1}</parameter1>
<parameter2>{value2}</parameter2>
<parameter3>{value3}</parameter3>
<parameter4>
<parameter4_1>{value4_1}</parameter4_1>
<parameter4_2>{value4_2}</parameter4_2>
<parameter4_3>{value4_3}</parameter4_3>
</parameter4>
</parameters>
Any idea how is it possible to send complex type as web
service input
from flex ?May be wrong, but I don't think the WebService
<request> tag can accept nested parameters, such as what
you're doing with <parameter4>. Each element name in the xml
pair must match a parameter name in the Web Service WSDL. I think
Flex would just ignore <parameter4> and not send it. -
Dynamic forms and Web Services?
So what we are trying to do is get a dynamic form's information into a database. On the form itself we have several fields wrapped in a subform that is set to repeat. It is bound to an element from a web service, which allows the form to grow based on the number of rows returned. We needed to do this because depending on the selection of departments, there could be a different number of rows returned each time. This works out fine. The form grows to display different options, based on the selection.
What we're having problems with is writing the changes made back to the database. We have a web service that is bound to the subform that contains the fields, and also bound to the fields themselves, but we're only able to write the information from the last node, i.e if there were six options that were displayed, and you made changes to all six, only the changes to the last one would be written to the database. Is there something special that needs to be done on the form side?
Any help is much appreciated.Yes ...you set up the web service to recieve one parameter .....then you create a multiline field (make it invisible so the user cannot see it). Then use this command to populate the field with the form data:
fieldname.rawValue = xfa.datasets.data.saveXML("pretty");
Now bind this field to the web service input and call it.
Paul -
Authentication between a web service and XI
Hi VC experts,
I'm in a deadline date to show the project clients a proof of concept that show the VC consuming data from XI through a XI generated WSDL file deployed as a web service.
When I test the web service with soapUI or XMLSpy, as there's a place to fill the username and password who has access to XI, the web service works just fine.
But, when I try to access it using a system object created inside SAP Portal, it fails.
I tried it in
two ways:
1. Using the system in a VC model. I can get the web service input/output parameters, select those I need to use (The same used when I test it through soapUI and XMLSpy) and, when I execute the test (Using the "Test Data Service" feature), the VC shows me the message "Portal request failed (Could not execute Web service operation)"
2. Creating a Web Service iView inside the SAP Portal. Informing the same input parameters as the tests described above, and when I preview it, the message "Function execution failed. Exception message: Could not execute Web service operation" is showed inside the iView.
I really appreciate any help. (And I promise I'll reward these helps with points!)
Thanks in advance,
AndréHi André
You can visit the https://wiki.sdn.sap.com/wiki/display/VC/Connectivity page for troubleshooting.
Also it should be great if you let us know the SPS level and the way you register the WebService in the Portal to be reached on the VC Storyboard.
Best Regards,
Luis -
Web Services configuration vs. SVN conflicts
Hi All,
I've got a problem with using amf php services and svn in my project. The problem exist when i use wizard to configurating web service connection -> Data/Services section in ZendStudio 8.0.0. Many files are autogenerated and the problem is with project.fml file ... this file contains all web service references that are autogenerated when (for example) I add a new method using Data/Services wizard. The fml file is generating randomly and then i have many conflicts that are impossible to resolve. Is there any way to configure this wizard (or don't using this wizard and testing WebService methods in another way)? This fml file must be under version control because contains all web service references (web service, method of web service, input types, return types and all). Solve for example:
1) is there any way to configure this fml file so as not to hold all the web service references in one file?
2) better configuring web service references in project and not using a Data/Services wizard?
Thanks for any help.Hello,
Can you send me the client and server code at tugdual[dot]grall[at]oracle[dot]com ?
regards
Tugdual Grall -
Web Services with XMLBeans Validation
Hi,
I am very new to XMLBeans and Web Services. From my understanding, schemas can be used to validate an xml document.
However, I would like to find out:
1. Can I validate my web service inputs againest the generated XMLBeans objects/schema?
2. How do I validate my input parameters from the web service? My input parameters include enumerations of valid values and also numeric values.
Fyi, the XMLBeans objects were generated from the schema which i created, and my web service is referencing/using these XMLBeans objects to package the results to the calling class/method.
Great Thanks!Hi,
However, I would like to find out:
1. Can I validate my web service inputs againest the
generated XMLBeans objects/schema?Yes just use the following code:
XmlObject obj = your object
ArrayList validationErrors = new ArrayList();
XmlOptions validationOptions = new XmlOptions();
validationOptions.setErrorListener(validationErrors);
obj.validate(validationOptions);the last method will return a boolean. The validationErrors arraylist will contain the errors if occured
>
2. How do I validate my input parameters from the web
service? My input parameters include enumerations of
valid values and also numeric values.If you put constains in your xsd they will also available inside the generated code. So validating will also see does errors.
>
Fyi, the XMLBeans objects were generated from the
schema which i created, and my web service is
referencing/using these XMLBeans objects to package
the results to the calling class/method.
Great Thanks!Hope this helps! -
Reducing the signature of a delivered web service
All,
Has anybody on here any experience with reducing the signature of a web service (input as well as output)?
What I am basically after is the opposite of a web service enhancement as it is detailed in the "Web Service Enhancement Guide". Similar to reducing the message type of an IDOC in ALE, I would like to take a standard web service and cut down the number of structures and fields to exactly what is required for my specific project, hence reducing transfer of unnecessary data.
Has anybody worked on something like this?
Kind regards,
MichaelI believe that today most people do this by creating wrapper services either in CE or ABAP around the SAP delivered service. However in NetWeaver 7.0 Enhancement Package 2, we will deliver new functionality to the ABAP development environment called Service Variants for doing exactly what you describe. It allows you to point to an existing service in the ESR and create a reduced interface on top of the existing service. Here are a just a few screen shots:
http://www.flickr.com/photos/tjung/3671726728/
http://www.flickr.com/photos/tjung/3670919473/in/photostream/
Maybe you are looking for
-
Problem with Flash video in webpage
I've encoded a number of videos in the FLV format(using both Flash Video encoder and Quicktime), using standard preset settings, inserted in webpage using dreamweaver standard - Insert Media - Flash Video. When I try to play the videos, online or tes
-
Assistance in configuring suspend
I recently installed Arch, and I disliked the suspend-on-lid-close feature. I tried fiddling with settings in GNOME, but to no avail. Then I tried fiddling with a login.d to get it to work, and after a few restarts and much fiddling, it worked. Howev
-
Publishing to mp4 almost doubles the file size
I have been trying to find someone in the forum with a similar problem but with no success. I hope someone can help me. I have a Captivate 7 file that is 59 MB. The resulting mp4 file after publishing is 107 MB. When I publish the same file to swf it
-
C++ source code of visa32.lib
Have anybody c++ source code for visa32.lin functions. Using VC++ and ni488 functions but not use VISA function how to use virtual GPIB to communicate tek Scope via LAN.
-
Hey, we have ordered a AC cloud abonement. The invoice created shows a wrong address an we need to alter it for our financial accounting. I have checked all the saved address data but could not find the reason why the invoice uses a wrong name. How c