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@googlemail.com>
To:
"galaxy-dev@lists.bx.psu.edu"
<galaxy-dev@lists.bx.psu.edu>
Cc:
Liisa Koski <liisa.koski@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@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/5cefd5d5536ea9bc11021c4c1e0b8937175e4ba1
> (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