uima-user mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Christoph Buescher <christophbuesc...@gmx.de>
Subject Re: Problems with "deserializeCasFromXmi" after using C++ AS Annotator
Date Fri, 11 Dec 2009 14:04:49 GMT
Hi Eddie,

unfortunately I'm out of the office today so I can only send you the unit test 
reproducing the problem on monday. But our scenario is more or less the following:

- A CPE running several Java AEs first, then send the CAS to a remote AS Service 
which is a C++ AE
- the collection reader adds a FS with document metadata (including the String 
Feature "URL") to the CAS. This FS directly extends the Top-Type, not Annotation.
- I used the unaltered DaveDetector to replace our own C++ AE to reproduce the 

For the unit test I wrote a "No-OP" Java AE which uses a Typesystem only 
including this "DocumentData" FS with only this one String Feature. I used a 
Custom Resource Specifier like in the AS Documentation to reference the 
DaveDetector on a remote machine. I then create a CAS using the CasCreationUtil 
which in turn uses the "No-OP" AE descriptor and the DaveDetector-Resource 
Specifier. I then add the problematic Feature in question and call "process" on 
the remote Dave-AE. Then the exception I mentioned in my earlier mail happens.

I will send you the test code on monday and also try to use CVD to reproduce the 


Eddie Epstein schrieb:
> Hi Christoph,
> I could not reproduce the problem, with 2.2.2 or the latest 2.3.0
> release candidate code.
> My scenario was:
> 1. add the following feature to type David:
>   	<featureDescription>
>   	  <name>documentURL</name>
>   	  <description></description>
>   	  <rangeTypeName>uima.cas.String</rangeTypeName>
>   	</featureDescription>
> 2. add this code to DaveDetector.cpp:
>       AnnotationFS fsNewExp =
>         tcas.createAnnotation(david, uiExprBeginPos, uiExprEndPos);
> +      Feature documentURL  = david.getFeatureByBaseName("documentURL");
> +      fsNewExp.setStringValue(documentURL,
> "http://www.gesundheitsnachrichten.net/live/navigation/live.php?navigation_id=11&_psmand=1");
>       indexRep.addFS(fsNewExp);
> 3. start DaveDetector as a service:
>     deployCppService descriptors\DaveDetector.xml DaveDetector
> 4. create a DaveDetector JMS service descriptor pointing at the service:
> <customResourceSpecifier xmlns="http://uima.apache.org/resourceSpecifier">
>    <resourceClassName>org.apache.uima.aae.jms_adapter.JmsAnalysisEngineServiceAdapter</resourceClassName>
>    <parameters>
>      <parameter name="brokerURL" value="tcp://localhost:61616"/>
>      <parameter name="endpoint" value="DaveDetector"/>
>    </parameters>
> </customResourceSpecifier>
> 5. use cvd to connect to the service, put a Dave and David in the
> text, call it, and inspect the results.
> Please do provide the modifications to DaveDetector and a details
> description of the scenario.
> Regards,
> Eddie

View raw message