You are viewing a plain text version of this content. The canonical link for it is here.
Posted to user@ctakes.apache.org by Lewis John Mcgibbney <le...@gmail.com> on 2015/10/15 07:55:11 UTC

URI is not hierarchical when attempting to obtain lvg.properties within JAR

Hi Folks,
I am using cTAKES 3.2.2 Maven dependencies.
I have some clinical pipeline code along with cTAKES dependencies and some
resources packaged into an uber jar which I am utilizing within my Spark
driver code. When I submit this to the Spark cluster I get a nasty stack
trace [0] with the following being important

- Caused by: java.lang.IllegalArgumentException: URI is not hierarchical
- 	at java.io.File.<init>(File.java:418)
- 	at org.apache.ctakes.lvg.ae.LvgAnnotator.createAnnotatorDescription(LvgAnnotator.java:565)
- 	at it.cnr.iac.CTAKESClinicalPipelineFactory.getTokenProcessingPipeline(CTAKESClinicalPipelineFactory.java:146)


The problem here is that
LvgAnnotator.createAnnotatorDescription(LvgAnnotator.java:565) looks as
follows

ExternalResourceFactory.createExternalResourceDescription(
              LvgCmdApiResourceImpl.class,
              new File(LvgCmdApiResourceImpl.class.getResource(
                  "/org/apache/ctakes/lvg/data/config/lvg.properties").toURI()))


Here we should be using LvgCmdApiResourceImpl.class.getResourceAsStream,
the transformation to File should then be done if required within
ExternalResourceFactory.createExternalResourceDescription.

The above is an issue which has been reported on a few occasions and a fix
somewhat proposed for a similar issue here [1][2].
I am going to submit a patch for this and submit a test. I'll open an issue
in Jira.
Thanks
Lewis

[0] https://paste.apache.org/gDJa
[1] https://issues.apache.org/jira/browse/CTAKES-307
[2] https://issues.apache.org/jira/browse/CTAKES-89

-- 
*Lewis*

Re: URI is not hierarchical when attempting to obtain lvg.properties within JAR

Posted by "Chen, Pei" <Pe...@childrens.harvard.edu>.
It would be great if we could have a patch that allows lvg to load from resource from steam. Thanks for looking into that Lewis. Note though- the physical files requirement may go deeper into lvg code.

Sent from my iPhone

On Oct 15, 2015, at 2:36 AM, Lewis John Mcgibbney <le...@gmail.com>> wrote:

Issue in Jira

https://issues.apache.org/jira/browse/CTAKES-385<https://urldefense.proofpoint.com/v2/url?u=https-3A__issues.apache.org_jira_browse_CTAKES-2D385&d=BQMFaQ&c=qS4goWBT7poplM69zy_3xhKwEW14JZMSdioCoppxeFU&r=huK2MFkj300qccT8OSuuoYhy_xEYujfPwiAxhPVz5WY&m=b6fj-4q9pocgwD0T-ZflNpieEpaRVPnmduFtnH_htzU&s=5KnFy9Ua4SgBM74E-DjPM2IsPKjCJv6gfVP8rH2WsDI&e=>

On Wed, Oct 14, 2015 at 10:55 PM, Lewis John Mcgibbney <le...@gmail.com>> wrote:
Hi Folks,
I am using cTAKES 3.2.2 Maven dependencies.
I have some clinical pipeline code along with cTAKES dependencies and some resources packaged into an uber jar which I am utilizing within my Spark driver code. When I submit this to the Spark cluster I get a nasty stack trace [0] with the following being important


  *   Caused by: java.lang.IllegalArgumentException: URI is not hierarchical
  *     at java.io.File.<init>(File.java:418)
  *     at org.apache.ctakes.lvg.ae.LvgAnnotator.createAnnotatorDescription(LvgAnnotator.java:565)
  *     at it.cnr.iac.CTAKESClinicalPipelineFactory.getTokenProcessingPipeline(CTAKESClinicalPipelineFactory.java:146)

The problem here is that LvgAnnotator.createAnnotatorDescription(LvgAnnotator.java:565) looks as follows


ExternalResourceFactory.createExternalResourceDescription(
              LvgCmdApiResourceImpl.class,
              new File(LvgCmdApiResourceImpl.class.getResource(
                  "/org/apache/ctakes/lvg/data/config/lvg.properties").toURI()))

Here we should be using LvgCmdApiResourceImpl.class.getResourceAsStream, the transformation to File should then be done if required within ExternalResourceFactory.createExternalResourceDescription.

The above is an issue which has been reported on a few occasions and a fix somewhat proposed for a similar issue here [1][2].
I am going to submit a patch for this and submit a test. I'll open an issue in Jira.
Thanks
Lewis

[0] https://paste.apache.org/gDJa<https://urldefense.proofpoint.com/v2/url?u=https-3A__paste.apache.org_gDJa&d=BQMFaQ&c=qS4goWBT7poplM69zy_3xhKwEW14JZMSdioCoppxeFU&r=huK2MFkj300qccT8OSuuoYhy_xEYujfPwiAxhPVz5WY&m=b6fj-4q9pocgwD0T-ZflNpieEpaRVPnmduFtnH_htzU&s=hGQzV7-QZUGPjNbYzOjDIjpCmhiyO0lREyc6J-8Rc64&e=>
[1] https://issues.apache.org/jira/browse/CTAKES-307<https://urldefense.proofpoint.com/v2/url?u=https-3A__issues.apache.org_jira_browse_CTAKES-2D307&d=BQMFaQ&c=qS4goWBT7poplM69zy_3xhKwEW14JZMSdioCoppxeFU&r=huK2MFkj300qccT8OSuuoYhy_xEYujfPwiAxhPVz5WY&m=b6fj-4q9pocgwD0T-ZflNpieEpaRVPnmduFtnH_htzU&s=wPNR1OzvALiGMoqgfCZj4fhSpQCVRhPvgdCEVjcPaV4&e=>
[2] https://issues.apache.org/jira/browse/CTAKES-89<https://urldefense.proofpoint.com/v2/url?u=https-3A__issues.apache.org_jira_browse_CTAKES-2D89&d=BQMFaQ&c=qS4goWBT7poplM69zy_3xhKwEW14JZMSdioCoppxeFU&r=huK2MFkj300qccT8OSuuoYhy_xEYujfPwiAxhPVz5WY&m=b6fj-4q9pocgwD0T-ZflNpieEpaRVPnmduFtnH_htzU&s=1UnvL5l47KbdMVjgQCl5nFDs11zr83v7J7AX4lSgNbQ&e=>

--
Lewis



--
Lewis

Re: URI is not hierarchical when attempting to obtain lvg.properties within JAR

Posted by "Chen, Pei" <Pe...@childrens.harvard.edu>.
It would be great if we could have a patch that allows lvg to load from resource from steam. Thanks for looking into that Lewis. Note though- the physical files requirement may go deeper into lvg code.

Sent from my iPhone

On Oct 15, 2015, at 2:36 AM, Lewis John Mcgibbney <le...@gmail.com>> wrote:

Issue in Jira

https://issues.apache.org/jira/browse/CTAKES-385<https://urldefense.proofpoint.com/v2/url?u=https-3A__issues.apache.org_jira_browse_CTAKES-2D385&d=BQMFaQ&c=qS4goWBT7poplM69zy_3xhKwEW14JZMSdioCoppxeFU&r=huK2MFkj300qccT8OSuuoYhy_xEYujfPwiAxhPVz5WY&m=b6fj-4q9pocgwD0T-ZflNpieEpaRVPnmduFtnH_htzU&s=5KnFy9Ua4SgBM74E-DjPM2IsPKjCJv6gfVP8rH2WsDI&e=>

On Wed, Oct 14, 2015 at 10:55 PM, Lewis John Mcgibbney <le...@gmail.com>> wrote:
Hi Folks,
I am using cTAKES 3.2.2 Maven dependencies.
I have some clinical pipeline code along with cTAKES dependencies and some resources packaged into an uber jar which I am utilizing within my Spark driver code. When I submit this to the Spark cluster I get a nasty stack trace [0] with the following being important


  *   Caused by: java.lang.IllegalArgumentException: URI is not hierarchical
  *     at java.io.File.<init>(File.java:418)
  *     at org.apache.ctakes.lvg.ae.LvgAnnotator.createAnnotatorDescription(LvgAnnotator.java:565)
  *     at it.cnr.iac.CTAKESClinicalPipelineFactory.getTokenProcessingPipeline(CTAKESClinicalPipelineFactory.java:146)

The problem here is that LvgAnnotator.createAnnotatorDescription(LvgAnnotator.java:565) looks as follows


ExternalResourceFactory.createExternalResourceDescription(
              LvgCmdApiResourceImpl.class,
              new File(LvgCmdApiResourceImpl.class.getResource(
                  "/org/apache/ctakes/lvg/data/config/lvg.properties").toURI()))

Here we should be using LvgCmdApiResourceImpl.class.getResourceAsStream, the transformation to File should then be done if required within ExternalResourceFactory.createExternalResourceDescription.

The above is an issue which has been reported on a few occasions and a fix somewhat proposed for a similar issue here [1][2].
I am going to submit a patch for this and submit a test. I'll open an issue in Jira.
Thanks
Lewis

[0] https://paste.apache.org/gDJa<https://urldefense.proofpoint.com/v2/url?u=https-3A__paste.apache.org_gDJa&d=BQMFaQ&c=qS4goWBT7poplM69zy_3xhKwEW14JZMSdioCoppxeFU&r=huK2MFkj300qccT8OSuuoYhy_xEYujfPwiAxhPVz5WY&m=b6fj-4q9pocgwD0T-ZflNpieEpaRVPnmduFtnH_htzU&s=hGQzV7-QZUGPjNbYzOjDIjpCmhiyO0lREyc6J-8Rc64&e=>
[1] https://issues.apache.org/jira/browse/CTAKES-307<https://urldefense.proofpoint.com/v2/url?u=https-3A__issues.apache.org_jira_browse_CTAKES-2D307&d=BQMFaQ&c=qS4goWBT7poplM69zy_3xhKwEW14JZMSdioCoppxeFU&r=huK2MFkj300qccT8OSuuoYhy_xEYujfPwiAxhPVz5WY&m=b6fj-4q9pocgwD0T-ZflNpieEpaRVPnmduFtnH_htzU&s=wPNR1OzvALiGMoqgfCZj4fhSpQCVRhPvgdCEVjcPaV4&e=>
[2] https://issues.apache.org/jira/browse/CTAKES-89<https://urldefense.proofpoint.com/v2/url?u=https-3A__issues.apache.org_jira_browse_CTAKES-2D89&d=BQMFaQ&c=qS4goWBT7poplM69zy_3xhKwEW14JZMSdioCoppxeFU&r=huK2MFkj300qccT8OSuuoYhy_xEYujfPwiAxhPVz5WY&m=b6fj-4q9pocgwD0T-ZflNpieEpaRVPnmduFtnH_htzU&s=1UnvL5l47KbdMVjgQCl5nFDs11zr83v7J7AX4lSgNbQ&e=>

--
Lewis



--
Lewis

Re: URI is not hierarchical when attempting to obtain lvg.properties within JAR

Posted by Lewis John Mcgibbney <le...@gmail.com>.
Issue in Jira

https://issues.apache.org/jira/browse/CTAKES-385

On Wed, Oct 14, 2015 at 10:55 PM, Lewis John Mcgibbney <
lewis.mcgibbney@gmail.com> wrote:

> Hi Folks,
> I am using cTAKES 3.2.2 Maven dependencies.
> I have some clinical pipeline code along with cTAKES dependencies and some
> resources packaged into an uber jar which I am utilizing within my Spark
> driver code. When I submit this to the Spark cluster I get a nasty stack
> trace [0] with the following being important
>
> - Caused by: java.lang.IllegalArgumentException: URI is not hierarchical
> - 	at java.io.File.<init>(File.java:418)
> - 	at org.apache.ctakes.lvg.ae.LvgAnnotator.createAnnotatorDescription(LvgAnnotator.java:565)
> - 	at it.cnr.iac.CTAKESClinicalPipelineFactory.getTokenProcessingPipeline(CTAKESClinicalPipelineFactory.java:146)
>
>
> The problem here is that
> LvgAnnotator.createAnnotatorDescription(LvgAnnotator.java:565) looks as
> follows
>
> ExternalResourceFactory.createExternalResourceDescription(
>               LvgCmdApiResourceImpl.class,
>               new File(LvgCmdApiResourceImpl.class.getResource(
>                   "/org/apache/ctakes/lvg/data/config/lvg.properties").toURI()))
>
>
> Here we should be using LvgCmdApiResourceImpl.class.getResourceAsStream,
> the transformation to File should then be done if required within
> ExternalResourceFactory.createExternalResourceDescription.
>
> The above is an issue which has been reported on a few occasions and a fix
> somewhat proposed for a similar issue here [1][2].
> I am going to submit a patch for this and submit a test. I'll open an
> issue in Jira.
> Thanks
> Lewis
>
> [0] https://paste.apache.org/gDJa
> [1] https://issues.apache.org/jira/browse/CTAKES-307
> [2] https://issues.apache.org/jira/browse/CTAKES-89
>
> --
> *Lewis*
>



-- 
*Lewis*