You don't need a tool to upload - you need 'upload1' (i.e. tools/data_source/upload.xml) and it cannot come from the tool shed - this will make its id something other than upload1. You can make some modifications to it, relocate it, etc... but that needs to be there in some form. In universe_wsgi.ini, your tool_config_file option can include tool_conf.xml in addition to shed_tool_conf.xml and upload1 can be the only thing in it (tool_conf.xml). For instance: tool_config_file = tool_conf.xml,shed_tool_conf.xml You may even be able to place <tool file="data_source/upload.xml" /> in shed_tool_conf.xml directly - I don't know. But the upload tool definitely can not be installed via the tool shed. Hopefully this helps. -John On Tue, Aug 12, 2014 at 12:47 PM, Juan Vladimir de la Rosa Medina <jvdelarosa@hotmail.com> wrote:
Thanks Nate, I must say that I did not have the upload tool in the tool_conf.xml because I am using the shed_tool_conf.xml to have a customized tools panel, and this xml file is empty by default. I've installed the upload tool throught the Galaxy main tool shed, I rebooted the system, and checked that the tool is in the shed_tool_conf.xml.
here is the code in the shed_tool_conf.xml
<section id="getext" name="Get Data" version=""> <tool file="toolshed.g2.bx.psu.edu/repos/alermine/upload_local_file/6b590f108b48/upload_local_file/upload_local_file/upload_local_file.xml" guid="toolshed.g2.bx.psu.edu/repos/alermine/upload_local_file/upload_local_file/1.0.0"> <tool_shed>toolshed.g2.bx.psu.edu</tool_shed> <repository_name>upload_local_file</repository_name> <repository_owner>alermine</repository_owner>
<installed_changeset_revision>6b590f108b48</installed_changeset_revision>
<id>toolshed.g2.bx.psu.edu/repos/alermine/upload_local_file/upload_local_file/1.0.0</id> <version>1.0.0</version> </tool> </section>
But when I try to upload the files to a data library, I got the same error.
What can I do?
________________________________ From: nate@bx.psu.edu Date: Tue, 12 Aug 2014 09:55:07 -0400 Subject: Re: [galaxy-dev] Problems uploading files to a data library To: jvdelarosa@hotmail.com CC: galaxy-dev@bx.psu.edu
On Tue, Aug 12, 2014 at 3:03 AM, Juan Vladimir de la Rosa Medina <jvdelarosa@hotmail.com> wrote:
Hi everyone,
I recently have installed a local instance of galaxy in my computer, everything worked fine until I changed the path for library_import_dir in the universe_wsgi.ini file, to upload files to data libraries. I followed the Galaxy documentation to setup this feature:
This is the path in the universe_wsgi.ini file library_import_dir = /media/New/Vladimir/My_RNA-seq/
The steps I followed are: Admin > Data Library > Create new data library > Add datasets > Upload directory of files file format was set to auto-detect server Directory was /media/New/Vladimir/My_RNA-seq/ and we chose the option to link to files instead of copying them
When I try to upload files, galaxy displays the following error:
Error Traceback:
⇝ AttributeError: 'NoneType' object has no attribute 'new_state'
Juan,
A bit of a guess here - have you removed the upload tool from your tool_conf.xml?
--nate
<?xml version="1.0" ?> <traceback> <sysinfo> <language version="2.7.3">Python</language> </sysinfo> <stack> <frame> <module>weberror.evalexception.middleware</module>
<filename>/home/labinmunologiaulpgc/galaxy-dist/eggs/WebError-0.8a-py2.7.egg/weberror/evalexception/middleware.py</filename> <line>364</line> <function>respond</function> <operation>app_iter = self.application(environ, detect_start_response)</operation> <operation_context> try: __traceback_supplement__ = errormiddleware.Supplement, self, environ app_iter = self.application(environ, detect_start_response) try: return_iter = list(app_iter) </operation_context> </frame> <frame> <module>paste.recursive</module>
<filename>/home/labinmunologiaulpgc/galaxy-dist/eggs/Paste-1.7.5.1-py2.7.egg/paste/recursive.py</filename> <line>84</line> <function>__call__</function> <operation>return self.application(environ, start_response)</operation> <operation_context> environ['paste.recursive.script_name'] = my_script_name try: return self.application(environ, start_response) except ForwardRequestException, e: middleware = CheckForRecursionMiddleware( </operation_context> </frame> <frame> <module>paste.httpexceptions</module>
<filename>/home/labinmunologiaulpgc/galaxy-dist/eggs/Paste-1.7.5.1-py2.7.egg/paste/httpexceptions.py</filename> <line>633</line> <function>__call__</function> <operation>return self.application(environ, start_response)</operation> <operation_context> []).append(HTTPException) try: return self.application(environ, start_response) except HTTPException, exc: return exc(environ, start_response) </operation_context> </frame> <frame> <module>galaxy.web.framework.base</module>
<filename>/home/labinmunologiaulpgc/galaxy-dist/lib/galaxy/web/framework/base.py</filename> <line>132</line> <function>__call__</function> <operation>return self.handle_request( environ, start_response )</operation> <operation_context> self.trace( message="Starting request" ) try: return self.handle_request( environ, start_response ) finally: self.trace( message="Handle request finished" ) </operation_context> </frame> <frame> <module>galaxy.web.framework.base</module>
<filename>/home/labinmunologiaulpgc/galaxy-dist/lib/galaxy/web/framework/base.py</filename> <line>190</line> <function>handle_request</function> <operation>body = method( trans, **kwargs )</operation> <operation_context> kwargs.pop( '_', None ) try: body = method( trans, **kwargs ) except Exception, e: body = self.handle_controller_exception( e, trans, **kwargs ) </operation_context> </frame> <frame>
<module>galaxy.webapps.galaxy.controllers.library_common</module>
<filename>/home/labinmunologiaulpgc/galaxy-dist/lib/galaxy/webapps/galaxy/controllers/library_common.py</filename> <line>927</line> <function>upload_library_dataset</function> <operation>**kwd )</operation> <operation_context> widgets=widgets,
replace_dataset=replace_dataset,
**kwd ) if created_outputs_dict: if cntrller == 'api': </operation_context> </frame> <frame>
<module>galaxy.webapps.galaxy.controllers.library_common</module>
<filename>/home/labinmunologiaulpgc/galaxy-dist/lib/galaxy/webapps/galaxy/controllers/library_common.py</filename> <line>1049</line> <function>upload_dataset</function> <operation>state = tool.new_state( trans )</operation> <operation_context> tool_id = 'upload1' tool = trans.app.toolbox.get_tool( tool_id ) state = tool.new_state( trans ) errors = tool.update_state( trans, tool.inputs_by_page[0], state.inputs, kwd ) tool_params = state.inputs </operation_context> </frame> </stack> <exception> <type>AttributeError</type> <value>'NoneType' object has no attribute 'new_state'</value> </exception> </traceback>
I have been looking for a solution to fix this problem on the web without success.
thank you very much
___________________________________________________________ Please keep all replies on the list by using "reply all" in your mail client. To manage your subscriptions to this and other Galaxy lists, please use the interface at: http://lists.bx.psu.edu/
To search Galaxy mailing lists use the unified search at: http://galaxyproject.org/search/mailinglists/
___________________________________________________________ Please keep all replies on the list by using "reply all" in your mail client. To manage your subscriptions to this and other Galaxy lists, please use the interface at: http://lists.bx.psu.edu/
To search Galaxy mailing lists use the unified search at: http://galaxyproject.org/search/mailinglists/