You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@uima.apache.org by "reshu.agarwal" <re...@orkash.com> on 2013/11/01 06:13:14 UTC

Exception found in resource specifier for Soap Service

Hi,

I am trying  to use UIMA as a Web Service and I have successfully 
deployed UIMA analysis engine SOAP service using Axis and Tomcat but 
when I tried to use Resource Specifier to call Deployed UIMA Web Service 
, It gave an Exception as following :

org.apache.uima.resource.ResourceInitializationException: The Resource 
Factory does not know how to create a resource of class 
org.apache.uima.analysis_engine.AnalysisEngine from the given 
ResourceSpecifier. (Descriptor: file:/media/.../rr.xml)
     at 
org.apache.uima.UIMAFramework.produceResource(UIMAFramework.java:261)
     at 
org.apache.uima.UIMAFramework.produceAnalysisEngine(UIMAFramework.java:326)
     at 
org.orkash.java_applications.RunWebService.main(RunWebService.java:23)


The Descriptor used to call UIMA Soap Service is given below (rr.xml):

<uriSpecifier>
<resourceType>AnalysisEngine</resourceType>
<uri>http://localhost:8080/axis/services/urn:PersonTitleAnnotator</uri>
<protocol>SOAP</protocol>
<timeout>60000</timeout>
</uriSpecifier>


And the Resource Specifier class contains this code to call Deployed 
UIMA Soap Service :

             File taeDescriptor = new File("/media/.../rr.xml");
             File inputFile = new File("/home/user/38434924.txt");

             XMLInputSource in = new XMLInputSource(taeDescriptor);
             ResourceSpecifier specifier = 
UIMAFramework.getXMLParser().parseResourceSpecifier(in);

             // create Analysis Engine and jCAS
             AnalysisEngine tae = 
UIMAFramework.produceAnalysisEngine(specifier);
             JCas jcas = tae.newJCas();

             // read contents of file
             FileInputStream fis = new FileInputStream(inputFile);
             byte[] contents = new byte[(int) inputFile.length()];
             fis.read(contents);
             fis.close();
             String document = new String(contents);

             // send doc through jcas
             jcas.setDocumentText(document);
             tae.process(jcas);



Please Help me out with this.

Thanks in Advance.

-- 
Reshu Agarwal


Re: Exception found in resource specifier for Soap Service

Posted by Marshall Schor <ms...@schor.com>.
On 11/11/2013 11:11 PM, reshu.agarwal wrote:
> Hi,
>
> Marshall, Thanks for the response. The problem has been fixed. Single Analysis
> Engine is working properly.
>
> Now, I want to run Uima Soap Service for the aggregate descriptor. 
I don't understand exactly what you want to do.

Do you want to run an aggregate, that has one (or more) delegates that runs
remotely using the remote SOAP service?

If that's what you want, yes, that's possible.  Just have one (or more) of your
delegate descriptors be the kind used for connecting to remote SOAP services.

If that's not what you mean, can you please restate what you're trying to do in
more detail?

-Marshall

> Is it possible?? Can I run CPM type of service using Soap Service????
>
> Thanks in Advance.
>
> On 11/11/2013 07:32 PM, Marshall Schor wrote:
>> On 11/11/2013 4:48 AM, reshu.agarwal wrote:
>>> Hi,
>>>
>>> yes Marshall I used the same but still this error is coming.
>> Please post the client's (the UIMA application that is going to be using the web
>> service) xml descriptor.
>> This error occurs when UIMA doesn't recognize that descriptor.
>>
>> -Marshall
>>
>>> On 11/08/2013 12:23 AM, Marshall Schor wrote:
>>>> Hi,
>>>>
>>>> The documentation and the examples all have the namespace specified with the
>>>> uriSpecifier - can you try adding this?
>>>>
>>>> e.g.
>>>>
>>>> <uriSpecifier xmlns="http://uima.apache.org/resourceSpecifier">
>>>>
>>>> -Marshall
>>>> On 11/1/2013 1:13 AM, reshu.agarwal wrote:
>>>>> Hi,
>>>>>
>>>>> I am trying  to use UIMA as a Web Service and I have successfully deployed
>>>>> UIMA analysis engine SOAP service using Axis and Tomcat but when I tried to
>>>>> use Resource Specifier to call Deployed UIMA Web Service , It gave an
>>>>> Exception as following :
>>>>>
>>>>> org.apache.uima.resource.ResourceInitializationException: The Resource
>>>>> Factory
>>>>> does not know how to create a resource of class
>>>>> org.apache.uima.analysis_engine.AnalysisEngine from the given
>>>>> ResourceSpecifier. (Descriptor: file:/media/.../rr.xml)
>>>>>       at
>>>>> org.apache.uima.UIMAFramework.produceResource(UIMAFramework.java:261)
>>>>>       at
>>>>> org.apache.uima.UIMAFramework.produceAnalysisEngine(UIMAFramework.java:326)
>>>>>       at
>>>>> org.orkash.java_applications.RunWebService.main(RunWebService.java:23)
>>>>>
>>>>>
>>>>> The Descriptor used to call UIMA Soap Service is given below (rr.xml):
>>>>>
>>>>> <uriSpecifier>
>>>>> <resourceType>AnalysisEngine</resourceType>
>>>>> <uri>http://localhost:8080/axis/services/urn:PersonTitleAnnotator</uri>
>>>>> <protocol>SOAP</protocol>
>>>>> <timeout>60000</timeout>
>>>>> </uriSpecifier>
>>>>>
>>>>>
>>>>> And the Resource Specifier class contains this code to call Deployed UIMA
>>>>> Soap
>>>>> Service :
>>>>>
>>>>>               File taeDescriptor = new File("/media/.../rr.xml");
>>>>>               File inputFile = new File("/home/user/38434924.txt");
>>>>>
>>>>>               XMLInputSource in = new XMLInputSource(taeDescriptor);
>>>>>               ResourceSpecifier specifier =
>>>>> UIMAFramework.getXMLParser().parseResourceSpecifier(in);
>>>>>
>>>>>               // create Analysis Engine and jCAS
>>>>>               AnalysisEngine tae =
>>>>> UIMAFramework.produceAnalysisEngine(specifier);
>>>>>               JCas jcas = tae.newJCas();
>>>>>
>>>>>               // read contents of file
>>>>>               FileInputStream fis = new FileInputStream(inputFile);
>>>>>               byte[] contents = new byte[(int) inputFile.length()];
>>>>>               fis.read(contents);
>>>>>               fis.close();
>>>>>               String document = new String(contents);
>>>>>
>>>>>               // send doc through jcas
>>>>>               jcas.setDocumentText(document);
>>>>>               tae.process(jcas);
>>>>>
>>>>>
>>>>>
>>>>> Please Help me out with this.
>>>>>
>>>>> Thanks in Advance.
>>>>>
>>>
>
>


Re: Exception found in resource specifier for Soap Service

Posted by "reshu.agarwal" <re...@orkash.com>.
Hi,

Marshall, Thanks for the response. The problem has been fixed. Single 
Analysis Engine is working properly.

Now, I want to run Uima Soap Service for the aggregate descriptor. Is it 
possible?? Can I run CPM type of service using Soap Service????

Thanks in Advance.

On 11/11/2013 07:32 PM, Marshall Schor wrote:
> On 11/11/2013 4:48 AM, reshu.agarwal wrote:
>> Hi,
>>
>> yes Marshall I used the same but still this error is coming.
> Please post the client's (the UIMA application that is going to be using the web
> service) xml descriptor.
> This error occurs when UIMA doesn't recognize that descriptor.
>
> -Marshall
>
>> On 11/08/2013 12:23 AM, Marshall Schor wrote:
>>> Hi,
>>>
>>> The documentation and the examples all have the namespace specified with the
>>> uriSpecifier - can you try adding this?
>>>
>>> e.g.
>>>
>>> <uriSpecifier xmlns="http://uima.apache.org/resourceSpecifier">
>>>
>>> -Marshall
>>> On 11/1/2013 1:13 AM, reshu.agarwal wrote:
>>>> Hi,
>>>>
>>>> I am trying  to use UIMA as a Web Service and I have successfully deployed
>>>> UIMA analysis engine SOAP service using Axis and Tomcat but when I tried to
>>>> use Resource Specifier to call Deployed UIMA Web Service , It gave an
>>>> Exception as following :
>>>>
>>>> org.apache.uima.resource.ResourceInitializationException: The Resource Factory
>>>> does not know how to create a resource of class
>>>> org.apache.uima.analysis_engine.AnalysisEngine from the given
>>>> ResourceSpecifier. (Descriptor: file:/media/.../rr.xml)
>>>>       at org.apache.uima.UIMAFramework.produceResource(UIMAFramework.java:261)
>>>>       at
>>>> org.apache.uima.UIMAFramework.produceAnalysisEngine(UIMAFramework.java:326)
>>>>       at org.orkash.java_applications.RunWebService.main(RunWebService.java:23)
>>>>
>>>>
>>>> The Descriptor used to call UIMA Soap Service is given below (rr.xml):
>>>>
>>>> <uriSpecifier>
>>>> <resourceType>AnalysisEngine</resourceType>
>>>> <uri>http://localhost:8080/axis/services/urn:PersonTitleAnnotator</uri>
>>>> <protocol>SOAP</protocol>
>>>> <timeout>60000</timeout>
>>>> </uriSpecifier>
>>>>
>>>>
>>>> And the Resource Specifier class contains this code to call Deployed UIMA Soap
>>>> Service :
>>>>
>>>>               File taeDescriptor = new File("/media/.../rr.xml");
>>>>               File inputFile = new File("/home/user/38434924.txt");
>>>>
>>>>               XMLInputSource in = new XMLInputSource(taeDescriptor);
>>>>               ResourceSpecifier specifier =
>>>> UIMAFramework.getXMLParser().parseResourceSpecifier(in);
>>>>
>>>>               // create Analysis Engine and jCAS
>>>>               AnalysisEngine tae =
>>>> UIMAFramework.produceAnalysisEngine(specifier);
>>>>               JCas jcas = tae.newJCas();
>>>>
>>>>               // read contents of file
>>>>               FileInputStream fis = new FileInputStream(inputFile);
>>>>               byte[] contents = new byte[(int) inputFile.length()];
>>>>               fis.read(contents);
>>>>               fis.close();
>>>>               String document = new String(contents);
>>>>
>>>>               // send doc through jcas
>>>>               jcas.setDocumentText(document);
>>>>               tae.process(jcas);
>>>>
>>>>
>>>>
>>>> Please Help me out with this.
>>>>
>>>> Thanks in Advance.
>>>>
>>


-- 
Thanks and Regards,
Reshu Agarwal
Software Engineer
Orkash Services Pvt Ltd


Re: Exception found in resource specifier for Soap Service

Posted by Marshall Schor <ms...@schor.com>.
On 11/11/2013 4:48 AM, reshu.agarwal wrote:
>
> Hi,
>
> yes Marshall I used the same but still this error is coming.

Please post the client's (the UIMA application that is going to be using the web
service) xml descriptor.
This error occurs when UIMA doesn't recognize that descriptor.

-Marshall

>
> On 11/08/2013 12:23 AM, Marshall Schor wrote:
>> Hi,
>>
>> The documentation and the examples all have the namespace specified with the
>> uriSpecifier - can you try adding this?
>>
>> e.g.
>>
>> <uriSpecifier xmlns="http://uima.apache.org/resourceSpecifier">
>>
>> -Marshall
>> On 11/1/2013 1:13 AM, reshu.agarwal wrote:
>>> Hi,
>>>
>>> I am trying  to use UIMA as a Web Service and I have successfully deployed
>>> UIMA analysis engine SOAP service using Axis and Tomcat but when I tried to
>>> use Resource Specifier to call Deployed UIMA Web Service , It gave an
>>> Exception as following :
>>>
>>> org.apache.uima.resource.ResourceInitializationException: The Resource Factory
>>> does not know how to create a resource of class
>>> org.apache.uima.analysis_engine.AnalysisEngine from the given
>>> ResourceSpecifier. (Descriptor: file:/media/.../rr.xml)
>>>      at org.apache.uima.UIMAFramework.produceResource(UIMAFramework.java:261)
>>>      at
>>> org.apache.uima.UIMAFramework.produceAnalysisEngine(UIMAFramework.java:326)
>>>      at org.orkash.java_applications.RunWebService.main(RunWebService.java:23)
>>>
>>>
>>> The Descriptor used to call UIMA Soap Service is given below (rr.xml):
>>>
>>> <uriSpecifier>
>>> <resourceType>AnalysisEngine</resourceType>
>>> <uri>http://localhost:8080/axis/services/urn:PersonTitleAnnotator</uri>
>>> <protocol>SOAP</protocol>
>>> <timeout>60000</timeout>
>>> </uriSpecifier>
>>>
>>>
>>> And the Resource Specifier class contains this code to call Deployed UIMA Soap
>>> Service :
>>>
>>>              File taeDescriptor = new File("/media/.../rr.xml");
>>>              File inputFile = new File("/home/user/38434924.txt");
>>>
>>>              XMLInputSource in = new XMLInputSource(taeDescriptor);
>>>              ResourceSpecifier specifier =
>>> UIMAFramework.getXMLParser().parseResourceSpecifier(in);
>>>
>>>              // create Analysis Engine and jCAS
>>>              AnalysisEngine tae =
>>> UIMAFramework.produceAnalysisEngine(specifier);
>>>              JCas jcas = tae.newJCas();
>>>
>>>              // read contents of file
>>>              FileInputStream fis = new FileInputStream(inputFile);
>>>              byte[] contents = new byte[(int) inputFile.length()];
>>>              fis.read(contents);
>>>              fis.close();
>>>              String document = new String(contents);
>>>
>>>              // send doc through jcas
>>>              jcas.setDocumentText(document);
>>>              tae.process(jcas);
>>>
>>>
>>>
>>> Please Help me out with this.
>>>
>>> Thanks in Advance.
>>>
>
>


Re: Exception found in resource specifier for Soap Service

Posted by "reshu.agarwal" <re...@orkash.com>.
Hi,

yes Marshall I used the same but still this error is coming.

On 11/08/2013 12:23 AM, Marshall Schor wrote:
> Hi,
>
> The documentation and the examples all have the namespace specified with the
> uriSpecifier - can you try adding this?
>
> e.g.
>
> <uriSpecifier xmlns="http://uima.apache.org/resourceSpecifier">
>
> -Marshall
> On 11/1/2013 1:13 AM, reshu.agarwal wrote:
>> Hi,
>>
>> I am trying  to use UIMA as a Web Service and I have successfully deployed
>> UIMA analysis engine SOAP service using Axis and Tomcat but when I tried to
>> use Resource Specifier to call Deployed UIMA Web Service , It gave an
>> Exception as following :
>>
>> org.apache.uima.resource.ResourceInitializationException: The Resource Factory
>> does not know how to create a resource of class
>> org.apache.uima.analysis_engine.AnalysisEngine from the given
>> ResourceSpecifier. (Descriptor: file:/media/.../rr.xml)
>>      at org.apache.uima.UIMAFramework.produceResource(UIMAFramework.java:261)
>>      at org.apache.uima.UIMAFramework.produceAnalysisEngine(UIMAFramework.java:326)
>>      at org.orkash.java_applications.RunWebService.main(RunWebService.java:23)
>>
>>
>> The Descriptor used to call UIMA Soap Service is given below (rr.xml):
>>
>> <uriSpecifier>
>> <resourceType>AnalysisEngine</resourceType>
>> <uri>http://localhost:8080/axis/services/urn:PersonTitleAnnotator</uri>
>> <protocol>SOAP</protocol>
>> <timeout>60000</timeout>
>> </uriSpecifier>
>>
>>
>> And the Resource Specifier class contains this code to call Deployed UIMA Soap
>> Service :
>>
>>              File taeDescriptor = new File("/media/.../rr.xml");
>>              File inputFile = new File("/home/user/38434924.txt");
>>
>>              XMLInputSource in = new XMLInputSource(taeDescriptor);
>>              ResourceSpecifier specifier =
>> UIMAFramework.getXMLParser().parseResourceSpecifier(in);
>>
>>              // create Analysis Engine and jCAS
>>              AnalysisEngine tae = UIMAFramework.produceAnalysisEngine(specifier);
>>              JCas jcas = tae.newJCas();
>>
>>              // read contents of file
>>              FileInputStream fis = new FileInputStream(inputFile);
>>              byte[] contents = new byte[(int) inputFile.length()];
>>              fis.read(contents);
>>              fis.close();
>>              String document = new String(contents);
>>
>>              // send doc through jcas
>>              jcas.setDocumentText(document);
>>              tae.process(jcas);
>>
>>
>>
>> Please Help me out with this.
>>
>> Thanks in Advance.
>>


-- 
Thanks and Regards,
Reshu Agarwal
Software Engineer
Orkash Services Pvt Ltd


Re: Exception found in resource specifier for Soap Service

Posted by Marshall Schor <ms...@schor.com>.
Hi,

The documentation and the examples all have the namespace specified with the
uriSpecifier - can you try adding this?

e.g.

<uriSpecifier xmlns="http://uima.apache.org/resourceSpecifier">

-Marshall
On 11/1/2013 1:13 AM, reshu.agarwal wrote:
>
> Hi,
>
> I am trying  to use UIMA as a Web Service and I have successfully deployed
> UIMA analysis engine SOAP service using Axis and Tomcat but when I tried to
> use Resource Specifier to call Deployed UIMA Web Service , It gave an
> Exception as following :
>
> org.apache.uima.resource.ResourceInitializationException: The Resource Factory
> does not know how to create a resource of class
> org.apache.uima.analysis_engine.AnalysisEngine from the given
> ResourceSpecifier. (Descriptor: file:/media/.../rr.xml)
>     at org.apache.uima.UIMAFramework.produceResource(UIMAFramework.java:261)
>     at org.apache.uima.UIMAFramework.produceAnalysisEngine(UIMAFramework.java:326)
>     at org.orkash.java_applications.RunWebService.main(RunWebService.java:23)
>
>
> The Descriptor used to call UIMA Soap Service is given below (rr.xml):
>
> <uriSpecifier>
> <resourceType>AnalysisEngine</resourceType>
> <uri>http://localhost:8080/axis/services/urn:PersonTitleAnnotator</uri>
> <protocol>SOAP</protocol>
> <timeout>60000</timeout>
> </uriSpecifier>
>
>
> And the Resource Specifier class contains this code to call Deployed UIMA Soap
> Service :
>
>             File taeDescriptor = new File("/media/.../rr.xml");
>             File inputFile = new File("/home/user/38434924.txt");
>
>             XMLInputSource in = new XMLInputSource(taeDescriptor);
>             ResourceSpecifier specifier =
> UIMAFramework.getXMLParser().parseResourceSpecifier(in);
>
>             // create Analysis Engine and jCAS
>             AnalysisEngine tae = UIMAFramework.produceAnalysisEngine(specifier);
>             JCas jcas = tae.newJCas();
>
>             // read contents of file
>             FileInputStream fis = new FileInputStream(inputFile);
>             byte[] contents = new byte[(int) inputFile.length()];
>             fis.read(contents);
>             fis.close();
>             String document = new String(contents);
>
>             // send doc through jcas
>             jcas.setDocumentText(document);
>             tae.process(jcas);
>
>
>
> Please Help me out with this.
>
> Thanks in Advance.
>