1

I have developed a WCF service that returns data serializable objects as [DataContracts]. Other folks in my organization wish to call this web services using DataStage and have it output the response to an XML file.

We are able to reference the service and invoke it properly but are unable to figure out how to configure the output (or potentially we are missing an input parameter) to deliver it as XML. We are currently only getting back plain text and all of the data clubbed together into one row. Any suggestions or tips on configuring the DataStage job to do this?

I apologize for the crude nature of this post, I know nothing about our DataStage environment (or anything about DataStage for that matter). However, our DataStage developers are beginning to suggest that our service is not configured properly and I am reduced to doing research for them.

Jonathan Spooner
  • 7,682
  • 2
  • 34
  • 41
Borophyll
  • 1,099
  • 2
  • 15
  • 24
  • check this post http://stackoverflow.com/questions/558515/what-is-the-best-most-flexible-way-to-have-wcf-output-xhtml – Surjit Samra Dec 06 '11 at 17:04

3 Answers3

1

Ask your Datastage team to first determine if the call is to be SOAP based or REST based. SOAP based calls can be configured into Datastage WSTransformer stage, however complex the types are. The tool may throw exceptions while importing the wsdl and xsd files, but it will finish.

Datastage cannot handle REST calls as far as I know. Even here, the Java Transformer stage can be used. Develop a jar file from Eclipse based IDEs and drop the jar into the DS server's file system. The jar should be based on codes that include Datastage related libraries (to read input rows from input links and write output and reject rows to respective links). In the middle, the jar file can make the REST call and format return results back via the output/ reject links.

rama
  • 11
  • 1
0

however our DataStage developers are beginning to suggest that our service is not configured properly and I am reduced to doing research for them.

Ask them for a sample of well configured response that they can work with, what they have done is that they shifted they work and responsibility to you. So when it works it is working for them not you. Since you know nothing about datastage, leave that part to those who get paid for it, just ask them for a sample acceptable format and use it accordingly.

Can you point IE to the service and see the XML response?

jimjim
  • 2,414
  • 2
  • 26
  • 46
0

Along the lines suggested by @Arjang, you should be able to demonstrate to yourself and your team mates what the service is producing pretty easily. The idea here is to determine if the problem lies with the producer (the service) or the consumer (in this case DataStage).

Use the WCF Test Client to make a request and capture the response.

For more complex situations, you can write a custom client (a console application usually does the job) and then enable WCF tracing to view the messages received and sent by the service.

Let us know what you find.

Visual Stuart
  • 661
  • 4
  • 10
  • If that's the case, then it looks like the DataStage developers need to work through how to consume a SOAP service. It might be worthwhile finding *any* SOAP service that they can consume, just to take your service out of the equation for a little while. – Visual Stuart Dec 06 '11 at 05:24