What is the difference between a flow service amp Java Service

Hi Guys,

I know that the difference between a flow service & Java Service is when it comes to the naming convention but i am not sure in what way its justified.could any one help me in this regard.
Thank you

Hi Sreebhushan,

The most striking difference is Flow service is proprietary language of webMethods,it cannot be used in outside Developer, unlike javaServices.

Puneet Saxena

Other than possibly creating your java services in a different branch of the package hierarchy for the sake of clarity, there is no difference in the naming convention. For example wm.tn:receive is a Flow service while wm.tn:log is a java service.

Flow is a graphical programming language that allows you to assemble building blocks of built-in and custom components together into services that can themselves be combined into larger services or used to build business processes defined using webMethods Modeler.

Flow’s strength and core area of focus is in its ability to transform XML and other hierarchical documents between a variety of formats (native and canonical) exchanged using a wide variety of communication protocols.

Another strength is its underlying service oriented approach which assumes that integration logic will be created using services supplied either by the core set of built-in services or by custom services which provide very discrete functionality. Integration logic is not locked inside a monolithic block of programming code created using java or another language.

An experienced Flow developer can accomplish an incredible amount of integration work without ever resorting to a single line of java or other lower level programming languages. Flow is not designed to be used to create user interfaces, carry out complex mathematical functions or to create general purpose application business logic.

Java services are used in situations where Flow needs to be extended to accomplish a task not provided in a built-in service or to leverage business logic contained in a third-party java library. Integration Server java services execute in the context of the webMethods Integration Server as static methods of classes created when they are saved. They are not portable to other Java application servers or execution environments.

Java services are most often used inside of Flow services to provide a needed function or transformation. It is not a best practice to build a large percentage of an integration application using IS java services. Doing so does not leverage the productivity advantages of Flow and does not provide significant portability advantages to warrant the increased maintenance cost.

HTH, others can chime in as well.


Thank You all for your help.


Hi All,

I want to know in which circumstances or where do we need to write java services instead of Flow services?

Please calrify my doubt with an example


This “Flow vs. Java” topic has been covered ad nauseum in earlier posts. Please expend the tiny amount of effort required to search for them.