Webmethods unable to locate the class file

Hi,

Webmethods is unable to locate the class file…(throws an exception, class not found) even though the jar is maintained at /packages/Proj_UploadFile_Service/code/jars.
However, when we place the jar at IntegrationServer/lib/jars, the service runs successfully.
[SIZE=2]But, we cannot place the jar at IntegrationServer/lib/jars, for obvious reasons (the client wont approve).

We have tried executing it at 4 different Integration Servers but the problem persists.
What we cannot understand is why the class is not getting picked up by Webmethods.
Kindly advice…

Thanks & Best Wishes,
Rahul Gupta

[INDENT]
[/INDENT][/SIZE]

I assume when say “Webmethods is unable…” and “…not getting picked up by Webmethods” you mean Integration Server. webMethods is a company that makes several products–one of which is Integration Server.

I assume you have a Java service that is using the classes in the jar. Where is this Java service located? In the same package I assume. If it is another package, it won’t work.

What are the “obvious reasons” for not placing the jar in the [IS]/lib/jars?

Hi,

Yes, i meant IntegrationServer…
The java service is placed in the same package
/packages/Proj_UploadFile_Service/code/source/
while the jar is located at
/packages/Proj_UploadFile_Service/code/jars/

The java service calls only one class in the jar which in turn calls other classes in the jar and gives back an output to the java service

We have guidelines from the client wherein all jars, etc must be available within the package itself.
Including the jar at IntegrationServer/lib/jars would require a server restart, which they are not willing to do.
I cannot attach the package release because of trade agreement with client

Thanks & Best Wishes

Rahul,

Instead of putting your jar file in /packages/Proj_UploadFile_Service/code/jars, place it into /packages/Proj_UploadFile_Service/code/jars/static/ - that will work.

I have worked with a team in the past where there were shared IS instances, i.e. single IS instance hosting application packages for different teams. The WIO team had a rule - applications host their own jars. They would not allow any application jar into the lib/jar for the reason that it was easy to track application-jar tie up besides, if application ever needs to be moved or removed - the jars moved along with application.

My 2 cents.
~Rohit

Hi Rahul:

Had similar issue. Try the following step,

  1. Place jar file at \IntegrationServer\Packages<PackageName>\code\jars
  2. Reload the package via webMethods Admin page.
  3. Recompile the java service.

thanks
nagarajan.d

Rohit,

your suggestion has finally brought an end to my R&D.
I placed the jar into /packages/Proj_UploadFile_Service/code/jars/static/

and it works perfectly well.
Thanks a billion for ur help.
Cheers & Best Wishes,
Rahul Gupta

Rahul,

code/jars/static and IS/lib/jars both work but have downsides. code/jars/static causes issues with package reloads. IS/lib/jars has deployment issues (i.e., you must restart the server).

The best place to put jars is in the code/jars directory. If you have other packages that need to use this jar, simply make them dependent on the package containing the jar.