Adam Lally (JIRA) wrote:
[ https://issues.apache.org/jira/browse/UIMA-402?page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#action_12494909 ]
Adam Lally commented on UIMA-402:
---------------------------------
Well, there are two issues - one trivial and the other not so trivial.
The first problem was that the MANIFEST.MF file for the org.apache.uima.runtime
plugin listed uima_adapter_soap.jar instead of uima-adapter-soap.jar. This is
already fixed in svn.
With that fixed there is a different error - a ClassNotFound on a jax-rpc
class. The problem is that the CDE is trying to connect to the remote service
to get its metadata (in order to display the merged type system) -- but it
doesn't have the required Axis jar files that are necessary to make a SOAP
call. We don't ship those jar files with UIMA.
UIMA 2.0 didn't have this error because the particular method being used to get
the merged type system
(CasCreationUtils.mergeDelegateAnalysisEngineTypeSystems) didn't contact remote
services, which wasn't generally the best behavior, but happened to work out in
this case.
Maybe, CasCreationUtils.mergeDelegateAnalysisEngineTypeSystems needs another
argument telling it whether to try to contact remote services or not?
Marshall, any thoughts on this?
Basic thought: if the user of the CDE sets it up so the soap axis jars
are available (is there a way to do that?), then things would work nicely.
The CDE has several places where it attempts to get remote metadata. It
is designed in such a way as to be able to proceed if the remote isn't
available (e.g., it isn't started, or in this case, there are jar files
missing).
Maybe the best thing would be to have
mergeDelegateAnalysisEngineTypeSystems try to contact remote services,
succeed where it can, and when it cannot, to skip just those that can't
be contacted, for whatever reason (service isn't running, or JARs needed
are missing). Of course, you would not want this behavior for actually
running - so another argument might be needed to control this. And, the
CDE would like to know if any remotes could not be contacted - I'm
thinking it should pop up a warning message in this case, saying that
the fully-merged type system may be missing some types.
-Marshall
Adding Remote SOAP AE to Aggregate in CDE causes validation error
-----------------------------------------------------------------
Key: UIMA-402
URL: https://issues.apache.org/jira/browse/UIMA-402
Project: UIMA
Issue Type: Bug
Components: Eclipse plugins
Affects Versions: 2.1
Reporter: Adam Lally
Fix For: 2.2
User bug report:
I came cross a problem with
org.apache.uima.desceditor.2.1.0.incubating-hotfix-1 when porting my UIMA
programs from the ibm 2.0.0 to apache uima.
To make an aggregate AE, I added a remote Soap AE service using the "Add
Remote" function of the CDE, then I got error message:
"The Resource Factory foes not know how to create a resource of class
org.apache.uima.resource.Resource from the given ResourceSpecifier. (Descriptor:
file_path...)"
The descriptor passed is a very simple Soap service descriptor. And when I
tried it with UIMA Document Analyzer tool, it worked well. Just the CDE keeps
throwing this error message. It didn't happen either with the old CDE.