Thanks Peter,
It was in fact the snffier type. I changed it to <sniffer
type="galaxy.datatypes.blast:BlastXml"/>
I am using the July07 distribution. The reason I installed the datatypes
manually is because when I did it via the directions with the toolshed all
my workflows that used blast tools were broken. They could no longer find
the blast tools. So I immediately removed the toolshed installation and
tried to set up as before. With the blast wrappers back in the
tools/ncbi_blast_plus directory. Now my workflows are functional again.
Thanks for your help,
Liisa
From: Peter Cock <p.j.a.cock(a)googlemail.com>
To: "galaxy-dev(a)lists.bx.psu.edu" <galaxy-dev(a)lists.bx.psu.edu>
Cc: Liisa Koski <liisa.koski(a)basf.com>
Date: 26/09/2012 04:33 AM
Subject: Re: [galaxy-dev] problem installing blast_datatypes
manually
On Tue, Sep 25, 2012 at 8:39 PM, Peter Cock <p.j.a.cock(a)googlemail.com>
wrote:
On Tuesday, September 25, 2012, Liisa Koski wrote:
>
> Hello,
> I followed the instructions below to manually install the
blast_datatypes:
>
> Manual Installation
> ===================
>
> Normally you would install this via the Galaxy ToolShed, which would
move
> the provided blast.py file into a suitable location and process
the
> datatypes_conf.xml entry to be combined with your local configuration.
>
> However, if you really want to this should work for a manual install.
Add
> the following line to the datatypes_conf.xml file in the Galaxy
main
> folder:
>
> <datatype extension="blastxml"
type="galaxy.datatypes.blast:BlastXml"
> mimetype="application/xml"
display_in_upload="true"/>
>
> Also create the file lib/galaxy/datatypes/blast.py by moving, copying
or
> linking the blast.py file provided in this tar-ball. Finally add
'import blast'
> near
> the start of file lib/galaxy/datatypes/registry.py (after the other
import
> lines).
>
> =========================
>
> I restarted my local Galaxy instance but still get this error.
>
> WARNING:galaxy.datatypes.registry:Error appending sniffer for datatype
> 'galaxy.datatypes.xml:BlastXml' to sniff_order: 'module' object has
no
> attribute 'BlastXml'
>
>
> Any help would be much appreciated.
> Thanks,
> Liisa
The error message sounds like your XML file is using the old location of
the
BlastXml class (it used to be in an xml.py file, now it is in
blast.py
instead). Can you grep the XML file for Blast? (Use -I for case
insensitive)
Sadly right now our Galaxy server is offline (suspected disk failure),
so I
may not be able to double check what is on our machine. I'll try
to have
a
look at work tomorrow though.
My guess is you have this, with an out of date sniffer line from when
BLAST+ was part of the main distribution:
<datatype extension="blastxml"
type="galaxy.datatypes.blast:BlastXml" mimetype="application/xml"
display_in_upload="true"/>
<sniffer type="galaxy.datatypes.xml:BlastXml"/>
And you should have:
$ grep -i blast datatypes_conf.xml
<datatype extension="blastxml"
type="galaxy.datatypes.blast:BlastXml" mimetype="application/xml"
display_in_upload="true"/>
<sniffer type="galaxy.datatypes.blast:BlastXml"/>
Or, if you leave out the sniffer:
$ grep -i blast datatypes_conf.xml
<datatype extension="blastxml"
type="galaxy.datatypes.blast:BlastXml" mimetype="application/xml"
display_in_upload="true"/>
The sniffer is important to allow the user to upload BLAST XML files
and have them automatically recognised as such. I see that I had not
mentioned that in the tool's README file, an oversight I will fix in the
next upload to the tool shed:
https://bitbucket.org/peterjc/galaxy-central/changeset/5cefd5d5536ea9bc11...
(Out of interest, was there a reason you didn't use the automatic
install
from the ToolShed?)
I should probably have also checked - are you running a recent
version of Galaxy where the NCBI BLAST+ wrappers have been
removed from the core distribution?
Regards,
Peter