webMethods Interview Questions

1.            What is abbreviation of ERP, SAP, CRM, XML, EDI, CAF, ESB and SOA?
·         ERP: Enterprise Resource planning; SAP: Systems application & products; CRM: Customer relationship management; XML: Extended markup language; CAF: Composite application framework; ESB: Enterprise service bus; SOA: Service oriented language.

2.            What is Web-service connector?
·          It invoked web services located on remote server. It sends HTTP or HTTPS to the webMethods IS that invoke a call to the web-service. The IS hosts packages that contains web-service and related files, authenticates clients and verifies that they are authorizes to executes the requested services.

3.            Name the command that invokes service in a Java service and in which package does it resides?
·          Services.doInvoke() methods used for calling in Java services. It resides in com.wm.app.b2b.server.

4.            What is adapter notification?
·          It enables an adapter to receive event data from the adapter resources. It is of two types: Polling notification & Listener notification.

5.            What do you mean by adapter service?
·           It connects to adapter resources and initiates an operation on the resources.

6.            What is default HTTP of webMethods server listener port?
·          5555

7.            What are flow steps available in ESB and describe any two?
·          Invoke, Map, Branch, Sequence, Loop, EXIT, Repeat and pipeline.
Branch: This step allows you to conditionally execute a step based on value of the variable at time.
o   Branch on switch value: Use variable to determine which step to be executed.
o   Branch on an expression: In this case evaluate label property of branch should be set as “true”.
Sequence: This is used to build a set of steps that you want to treat as a group. Step in-groups are executed in order, one after another.  Except the steps under branch condition. It is useful - To group a set of steps as a single alternative beneath a Branch step; To specify the condition under which the service will exit a sequence of steps without executing the entire set. 
8.        What is CentraSite?

·          It is kind of repository which facilitates create, browse and manage information or artifacts in the registry.

Publish and Subscribe Interview Questions?

1.            Where is document routed when broker is not available?
·         OUTBOUND document store.

2.            Name different storage type of publishable document?
·         Guaranteed and volatile.

3.            What is difference between storage type guaranteed and volatile?
·          This storage type helps Broker, how to store a doc. Guaranteed: It is stored on disk and also on memory. Volatile: The broker stores the document in memory only.

4.            How do broker routs the document to subscriber?
·         If the document was published as broadcast, the broker identifies subscriber and places a copy of the doc in the client queue for each subscriber. If the doc was delivered, the broker places the document in the queue for client specified in the delivery request.

5.            Name the element in webMethods that actually supervises the document transfer between IS and Broker?
·         Dispatcher.

6.            What happen if no subscriber type is specified in document?
·         The Broker returns the acknowledgement (ACK) to the publisher and then discard the document or in case of dead letter subscription, the broker deposit the doc in queue containing dead letter subscriber.

7.     During implementation of “Exactly Once” properties in trigger, what are the three elements helps in resolving document status?
·          1. Redelivery count; 2. Document History DB; 3. Document resolver service.

8.            What is the three status of duplicate detection in trigger for document status?
·           NEW, DUPLICATE, IN_DOUBT

What do you understand by state of a service?

There are two types of states: Stateful: If the IS receives requests from repeating clients then this state is useful. The client can be connected to IS and authenticated once and then issue many service invocations during the same session. Stateless: If clients typically send a single invocation requests to IS at a time then use stateless.  
Using a stateless services prevents the creation of session that will sit unused, taking up resources in IS.

/.+/ and /^ISA/ Explain Regular Expressions?

Using regular expressions can greatly simplify your BRANCH constructs. The regular expression appendix in the B2B Integrator Guide describes the syntax. The regular expression in a label must be surrounded with slashes. A couple of examples:

/.+/
Tests for one or more characters. Strings that are $null or are empty will not be selected by this label (e.g. the branch won't take this path)

/^ISA/
Tests that the string starts with the characters "ISA".

FLOW example:

BRANCH on '/tailOfAK5'
/.+/: MAP (tailOfAK5 has one or more chars)
$default: SEQUENCE (tailOfAK5 is empty or null)

How to Invoking a flow service through java client?

IData out= context.invoke("namespace", "service name", "input);
out : IData where does java store the output of the webMethods service.
namespace : The folder where do you store your service in the webMethods. (eg : "pub.flow")

service name : Service name which will you call from java code.

input : IData input of the service that want to be called.