taverna-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From Stian Soiland-Reyes <st...@apache.org>
Subject Re: Problem on Taverna Plugin Installation
Date Sat, 13 Feb 2016 17:40:41 GMT
I think the break was that their earlier had a released version numbers
without SNAPSHOT, so that metadata fallback was not needed then.
On 11 Feb 2016 18:19, "Gale Naylor" <GaleN@noventussolutions.com> wrote:

> Do we know what caused the "break" to happen in January when everything was
> working fine before?
>
> On Thu, Feb 11, 2016 at 8:30 AM Stian Soiland-Reyes <stain@apache.org>
> wrote:
>
> > Well, you asked for it! ;)
> >
> > Maven 3 deploys SNAPSHOTs with timestamps in the filename (e.g.
> > 1.0-20150203151700.pom and .jar) and modify maven-metadata.xml to say its
> > existence, while earlier Mavens would often (also) deploy the file
> directly
> > with just 1.0-SNAPSHOT.jar at the end. Some even earlier Mavens only
> > deployed the non-timestamp and didn't update maven-metadata.xml.
> >
> > To play along, Taverna first tries to retrieve the oldskool path, before
> > resorting to parsing the Maven metadata XML.
> >
> > On this particular server, instead of 404 Not Found for the first, it
> tried
> > to be "helpful" with a 300 response and a file listing of similar paths.
> > Taverna/Java naively saves this as if it was the pom, and then fails to
> > parse it as it is HTML, not XML.
> >
> > While you could say this is a bug in Taverna 2's plugin system Raven
> which
> > should check for 200 OK before saving the pom/jar, the  "real" problem is
> > that we implemented Maven repository support ourselves, as (at least at
> the
> > time) Maven's codebase did not make it easy to reuse its repository
> client
> > code.
> >
> > Taverna 3's plugin system uses OSGi instead of Raven/Maven and has a much
> > simpler repository structure, but it might be worth hardening our new
> > Download code to ensure similar things does not happen there. Released
> > Taverna 3 code is in taverna-download-impl of incubator-taverna-osgi.
> > On 10 Feb 2016 11:59, "Ian Dunlop" <ian.dunlop@manchester.ac.uk> wrote:
> >
> > > Hello,
> > >
> > > Thanks for the detailed analysis Stian. So, I'm trying to understand
> > > what the unedrlying issue is (I guess so we can then add it to any docs
> > > as things to be aware of). Is it that there is no pom file deployed in
> > > the repo.
> > > ie taverna is looking for
> > >
> > >
> > >
> >
> http://192.185.115.65/~diana/DIANA_plugin_updated/test-plugins/gr/dianatools/diana.services-activity/1.0-SNAPSHOT/diana.services-activity-1.0-SNAPSHOT.pom
> > >
> > > but all there is only
> > >
> > >
> > >
> >
> http://192.185.115.65/~diana/DIANA_plugin_updated/test-plugins/gr/dianatools/diana.services-activity/1.0-SNAPSHOT/diana.services-activity-1.0-20150430.173815-1.pom
> > >
> > > Why would that be? Is it a mvn deploy issue? Why is there no
> > > diana.services-activity-1.0-SNAPSHOT.pom ?
> > >
> > > Cheers,
> > >
> > > Ian
> > >
> > > On 10/02/2016 10:02, Stian Soiland-Reyes wrote:
> > > > Looking at ~/.taverna-core-2.5.0/taverna-core-2.5.0.log I get
> > > >
> > > > WARN  2016-02-10 09:40:48,187
> > > > (net.sf.taverna.raven.repository.impl.ArtifactImpl:85) - XML SAX
> error
> > > > for /home/stain/.taverna-core-2.5.0
> > > >
> > >
> >
> /repository/gr/dianatools/diana.services-activity/1.0-SNAPSHOT/diana.services-activity-1.0-SNAPSHOT.pom
> > > > org.xml.sax.SAXParseException; lineNumber: 1; columnNumber: 50; White
> > > > spaces are required between publicId and systemId.
> > > >         at org.apache.xerces.parsers.DOMParser.parse(Unknown Source)
> > > >         at org.apache.xerces.jaxp.DocumentBuilderImpl.parse(Unknown
> > > Source)
> > > >         at
> > > javax.xml.parsers.DocumentBuilder.parse(DocumentBuilder.java:121)
> > > >         at
> > >
> >
> net.sf.taverna.raven.repository.impl.ArtifactImpl.readAndParseXML(ArtifactImpl.java:560)
> > > >         at
> > >
> >
> net.sf.taverna.raven.repository.impl.ArtifactImpl.readXML(ArtifactImpl.java:526)
> > > >         at
> > >
> >
> net.sf.taverna.raven.repository.impl.ArtifactImpl.getPackageType(ArtifactImpl.java:280)
> > > >         at
> > >
> >
> net.sf.taverna.raven.repository.impl.LocalRepository.act(LocalRepository.java:530)
> > > >         at
> > >
> >
> net.sf.taverna.raven.repository.impl.LocalRepository.update(LocalRepository.java:510)
> > > >         at
> > >
> >
> net.sf.taverna.raven.plugins.PluginManager.addPlugin(PluginManager.java:221)
> > > >         at
> > >
> >
> net.sf.taverna.raven.plugins.ui.PluginSiteFrame$4.run(PluginSiteFrame.java:426)
> > > >
> > > > and the same for diana-services-activity-ui.
> > > >
> > > > If I inspect those downloaded POM files locally I see it's no wonder
> > > > the XML is not parsing, as I find HTML like:
> > > >
> > > > <title>300 Multiple Choices</title>
> > > > </head><body>
> > > > <h1>Multiple Choices</h1>
> > > > The document name you requested
> > > >
> > >
> >
> (<code>/~diana/DIANA_plugin_updated/test-plugins/gr/dianatools/diana.services-activity-ui/1.0-SNAPSHOT/diana.services-activity-ui-1.0-SNAPSHOT.pom</code>)
> > > > could not be found on this server.
> > > > However, we found documents with names similar to the one you
> > > > requested.<p>Available documents:
> > > > <ul>
> > > > <li><a
> > >
> >
> href="/~diana/DIANA_plugin_updated/test-plugins/gr/dianatools/diana.services-activity-ui/1.0-SNAPSHOT/diana.services-activity-ui-1.0-20150430.174001-1.pom.md5">/~diana/DIANA_plugin_updated/test-plugins/gr/dianatools/diana.services-activity-ui/1.0-SNAPSHOT/diana.services-activity-ui-1.0-20150430.174001-1.pom.md5</a>
> > > > (common basename)
> > > > <li><a
> > >
> >
> href="/~diana/DIANA_plugin_updated/test-plugins/gr/dianatools/diana.services-activity-ui/1.0-SNAPSHOT/diana.services-activity-ui-1.0-20150430.174001-1-test-sources.jar.md5">/~diana/DIANA_plugin_updated/test-plugins/gr/dianatools/diana.services-activity-ui/1.0-SNAPSHOT/diana.services-activity-ui-1.0-20150430.174001-1-test-sources.jar.md5</a>
> > > > (common basename)
> > > >
> > > > So this seems to come from Taverna trying to first fetch these URLs:
> > > >
> > > >
> > >
> >
> http://192.185.115.65/~diana/DIANA_plugin_updated/test-plugins/gr/dianatools/diana.services-activity/1.0-SNAPSHOT/diana.services-activity-1.0-SNAPSHOT.pom
> > > >
> > >
> >
> http://192.185.115.65/~diana/DIANA_plugin_updated/test-plugins/gr/dianatools/diana.services-activity-ui/1.0-SNAPSHOT/diana.services-activity-ui-1.0-SNAPSHOT.pom
> > > >
> > > >
> > > > I don't think Taverna 2's plugin system is handling that 300 response
> > > > correctly as it stores the 300 error HTML as if it was the successful
> > > > pom downloaded.  Taverna would normally try to get the specific
> > > > version directly, if a 404 Not Found, it will looking in
> > > > maven-metadata.xml to find the latest version
> > > >
> > > > See
> > >
> >
> https://github.com/taverna/taverna2-raven/blob/maintenance/raven/src/main/java/net/sf/taverna/raven/repository/impl/LocalRepository.java#L766
> > > >
> > > >
> > > > Are you able to reconfigure your Apache server to avoid this "similar
> > > > name matching" and return 404 for those non-matching URIs?
> > > >
> > > > Something like
> > > >
> > > > CheckSpelling Off
> > > >
> > > > in .htaccess for /~diana/DIANA_plugin_updated/ should do.
> > > >
> > > >
> > > > Alternatively if you release your plugin in a non-SNAPSHOT version,
> > > > then it should also work well.
> > > >
> > > > BTW - in your repository list at
> > > >
> > >
> >
> http://192.185.115.65/~diana/DIANA_plugin_updated/test-plugins/diana.services-plugin-1.0-SNAPSHOT.xml
> > > > you should remove all repositories except:
> > > >
> > > > <repository>http://www.mygrid.org.uk/maven/repository/</repository>
> > > > <repository>
> > > http://192.185.115.65/~diana/DIANA_plugin_updated/test-plugins/
> > > </repository>
> > > >
> > > >
> > > > http://192.185.115.65/~diana/DIANA_plugin_updated should also be
> > > > removed as it is one level too high (e.g.
> > > >
> > >
> >
> http://192.185.115.65/~diana/DIANA_plugin_updated/gr/dianatools/diana.services-activity-ui
> > > > does not exist) - this adds lots of unnecessary requests.
> > > >
> > > >
> > > > You should delete all of ~/.taverna-core-2.5.0/repository (or
> > > > equivalent) to force re-download, and delete
> > > > ~/.taverna-core-2.5.0/plugins to install the plugin from fresh.
> > > >
> > > > On 10 February 2016 at 09:16, Alan Williams <
> alaninmcr@googlemail.com>
> > > wrote:
> > > >>
> > > >>
> > > >>
> > > >> -------- Forwarded Message --------
> > > >> Subject: Re: Problem on Taverna Plugin Installation
> > > >> Date: Tue, 09 Feb 2016 21:46:13 +0200
> > > >> From: PARASKEVOPOULOU MARIA <mparaskevopoulou@uth.gr>
> > > >> To: alaninmcr <alaninmcr@googlemail.com>
> > > >>
> > > >> Hi Ian,
> > > >>
> > > >> For Taverna v2.5. in order to install the plugin, the following
> plugin
> > > >> site should be added :
> > > >> http://192.185.115.65/~diana/DIANA_plugin_updated/test-plugins/.
> You
> > > >> can also see the relevant information on our site
> > > >>
> > >
> >
> http://diana.imis.athena-innovation.gr/DianaTools/index.php?r=site/help&topic=taverna
> > > .
> > > >>
> > > >> Thank you in advance for your support.
> > > >>
> > > >> Best regards,
> > > >> Maria
> > > >>
> > > >> Quoting alaninmcr <alaninmcr@googlemail.com>:
> > > >>
> > > >>
> > > >>> -------- Forwarded Message --------
> > > >>> Subject: Re: Problem on Taverna Plugin Installation
> > > >>> Date: Tue, 9 Feb 2016 13:57:08 +0000
> > > >>> From: Ian Dunlop <ian.dunlop@manchester.ac.uk>
> > > >>> Reply-To: dev@taverna.incubator.apache.org
> > > >>> To: dev@taverna.incubator.apache.org
> > > >>>
> > > >>> Hello,
> > > >>>
> > > >>> What does the plugins.xml say eg
> > > >>> /home/johndoe/.taverna-core-2.5.0/plugins.xml. Maybe taverna can't
> > find
> > > >>> your server for some reason.
> > > >>>
> > > >>> Where is your plugin deployed ie the info you put in when adding
a
> > new
> > > >>> plugin site? We could then try and install it and see if we get
the
> > > same
> > > >>> result.
> > > >>>
> > > >>> Cheers,
> > > >>>
> > > >>> Ian
> > > >>>
> > > >>> On 08/02/2016 18:52, PARASKEVOPOULOU MARIA wrote:
> > > >>>>
> > > >>>> Dear Taverna team,
> > > >>>>
> > > >>>> We have implemented a Taverna plugin incorporating services
and
> > > >>>> algorithms implemented in the DIANA LAB (www.microrna.gr).
> > > >>>> The plugin initially worked for Taverna 2.3, while several
months
> > ago
> > > we
> > > >>>> have updated the plugin and had it functional for both Taverna
2.3
> > and
> > > >>>> 2.5 versions.
> > > >>>>
> > > >>>> However, the last month DIANA users complain that they cannot
add
> > the
> > > >>>> DIANA Taverna plugin in their Taverna workbench.
> > > >>>>
> > > >>>> The installation has been performed several times in the past
with
> > > >>>> success.
> > > >>>> We uninstalled the plugin from our server and also observed
a
> > failure
> > > in
> > > >>>> the reinstallation.
> > > >>>> We redeployed the plugin but the error remains.
> > > >>>>
> > > >>>> The logs produced in Taverna, report a failure in fetching
a Pom
> > file.
> > > >>>>
> > > >>>>
> > > >>>> "WARN  2015-07-22 19:34:34,036
> > > >>>> (net.sf.taverna.raven.repository.impl.LocalRepository:85)
- Could
> > not
> > > >>>> read com.example:DIANA_Services-activity-ui:1.2-SNAPSHOT from
> > > >>>> http://www.mygrid.org.uk/maven/biomoby/biomoby.org/m2repo/
> > > >>>> java.io.IOException: Server returned HTTP response code: 409
for
> > URL:
> > > >>>>
> > > >>>>
> > >
> >
> http://repository.mygrid.org.uk/artifactory/biomoby/com/example/DIANA_Services-activity-ui/1.2-SNAPSHOT/DIANA_Services-activity-ui-1.2-SNAPSHOT.pom
> > > >>>>
> > > >>>> "
> > > >>>> We assume that this failure is due to the fact that Taverna
is not
> > > >>>> trying to install/download the DIANA plugin from our
> server,defined
> > in
> > > >>>> the plugin's project pom.xml, but from
> > > http://repository.mygrid.org.uk.
> > > >>>>
> > > >>>> Did something change concerning the format of the project
pom.xml
> > that
> > > >>>> is utilized for the plugin deployment?
> > > >>>> Will the error be fixed, if we change the pom.xml? For the
the
> > pom.xml
> > > >>>> design we followed a similar format as in the following pom
file
> > > >>>> https://github.com/taverna/taverna-prov/blob/master/pom.xml.
> > > >>>>
> > > >>>> It would be grateful if we could have your feedback on how
to
> > > >>>> troubleshoot the issue.
> > > >>>>
> > > >>>> Thank you in advance,
> > > >>>>
> > > >>>> DIANA Team
> > > >>>>
> > > >>>
> > > >>> --
> > > >>> Ian Dunlop, eScience Lab
> > > >>> School of Computer Science
> > > >>> The University of Manchester
> > > >>> http://orcid.org/0000-0001-7066-3350
> > > >>
> > > >>
> > > >>
> > > >>
> > > >>
> > > >>
> > > >
> > > >
> > > >
> > >
> > > --
> > > Ian Dunlop, eScience Lab
> > > School of Computer Science
> > > The University of Manchester
> > > http://orcid.org/0000-0001-7066-3350
> > >
> >
>

Mime
  • Unnamed multipart/alternative (inline, None, 0 bytes)
View raw message