Dear,
I am looking for help after updating our Galaxy production server to release 2014.08.11,
one of our in-house tool does not load in Galaxy anymore. I do think the problem is
related to the conditional parameter because when I comment this section out Galaxy does
display it. Any ideas where the problem could be?
Here is the xml file:
<tool id="hm" name="heatmap-public">
<description>Creates a heatmap from public datasets</description>
<command interpreter="R --vanilla --slave -f">
#silent sys.stderr.write("!!!! Cheetah Template Variables !!!!\n")
#for k,v in $searchList[2].items()
#silent sys.stderr.write(" %s = %s\n" % (str(k), str(v) ))
#end for
## path to the dataset selected extracted from the 'cri_datasets' data table
(tool-data/cri/datasets.loc)
#import os
#set $dataset_relative_path = filter( lambda x: str( x[0] ) == str( $dataset.name ),
$__app__.tool_data_tables[ 'cri_datasets' ].get_fields() )[0][-1]
#set $dataset_path = os.path.join($__tool_data_path__, $dataset_relative_path)
hm.R --args
$dataset.name
$dataset_path
$input
$col
$output_html
#if not $varExists('$output_pdf')
none
#else
$output_pdf
#end if
$output_html.files_path
$dataset.list
$gene
$dataset.label
$dataset.sample
## optional arguments set to 'none' when not relevant to a particular
dataset
#if not $varExists('$dataset.blocks')
none
#else
$dataset.blocks
#end if
#if not $varExists('$dataset.group')
none
#else
$dataset.group
#end if
$scaling
$coloring.coloring
## optional arguments set to '0' when not relevant to a colour option
#if not $varExists('$coloring.limit')
0
#else
$coloring.limit
#end if
$cexrow
$cexcol
2>stderr || cat stderr 1>&2
</command>
<inputs>
<param name="input" type="data" format="tabular,txt"
label="Gene List" help="Tab delimited text file containing a list of gene
symbols"/>
<param name="col" type="data_column" data_ref="input"
numerical="False" label="Column" help="Column containing gene
symbols (only available for tabular input file)" />
<conditional name="dataset">
<param name="name" type="select" label="Dataset
name">
<options from_data_table="cri_datasets">
<column name="name" index="1"/>
<column name="value" index="0"/>
<filter type="multiple_splitter" column="4"
separator="," />
<filter type="static_value" value="heatmap"
column="4" />
</options>
</param>
<when value="glinsky">
<param name="list" type="select" label="Input
type" help="Type of input (Genes or Affymetrix probe IDs)">
<option value="genes"
selected="true">Genes</option>
<option value="probes">Probes</option>
</param>
<param name="sample" type="select" label="Sample
ordering" help="Cluster samples or order samples by Recurrence, Pathological
Gleason grade or Surgical margin status">
<option value="cluster"
selected="true">Cluster</option>
<option value="recurrence">Recurrence</option>
<option value="gleason">Gleason grade</option>
<option value="sms">Surgical margin status</option>
</param>
<param name="blocks" type="select" label="Add
coloured blocks" help="Add coloured blocks for Recurrence, Pathological Gleason
grade, Surgical margin status (Negative/Positive), all three or none">
<option value="recurrence"
selected="true">Recurrence</option>
<option value="gleason">Gleason grade</option>
<option value="sms">Surgical margin status</option>
<option value="all">All three</option>
<option value="none">No blocks</option>
</param>
<param name="label" type="select" label="Gene
labels" help="Label rows of heatmap with Probe IDs, Gene symbols or
both">
<option value="both"
selected="true">Both</option>
<option value="gene">Gene</option>
<option value="probe">Probe</option>
</param>
</when>
<when value="varambally">
<param name="list" type="select" label="Input
type" help="Type of input (Genes or Affymetrix probe IDs)">
<option value="genes"
selected="true">Genes</option>
<option value="probes">Probes</option>
</param>
<param name="sample" type="select" label="Sample
ordering" help="Cluster samples or order by Group">
<option value="cluster"
selected="true">Cluster</option>
<option value="group">Group</option>
</param>
<param name="label" type="select" label="Gene
labels" help="Label rows of heatmap with Affymetrix Probe IDs, Gene symbols or
both">
<option value="both"
selected="true">Both</option>
<option value="gene">Gene</option>
<option value="probe">Probe</option>
</param>
</when>
<when value="taylor">
<param name="list" type="select" label="Input
type" help="Type of input (Genes or Refseq Accession number)">
<option value="genes"
selected="true">Genes</option>
<option value="access">Accession number</option>
</param>
<param name="sample" type="select" label="Sample
ordering" help="Cluster samples or order samples by Recurrence, Gleason Grade,
Surgical Margin Status, Group or Pairs (when matched pairs selected)">
<option value="cluster"
selected="true">Cluster</option>
<option value="recurrence">Recurrence</option>
<option value="gleason">Gleason grade</option>
<option value="sms">Surgical margin status</option>
<option value="group">Group</option>
<option value="pairs">Pairs</option>
</param>
<param name="blocks" type="select" label="Add
coloured blocks" help="Add coloured blocks for Recurrence (N/Y), Pathological
Gleason grade (Low/High), Surgical margin status (Negative/Positive), Group
(Benign/Primary/Met/Cell line), All four or None">
<option value="recurrence"
selected="true">Recurrence</option>
<option value="gleason">Gleason grade</option>
<option value="sms">Surgical margin status</option>
<option value="group">Group</option>
<option value="all">All four</option>
<option value="none">No blocks</option>
</param>
<param name="group" type="select" label="Select
groups" help="Select groups included in the plot, All, No cell line, Matched
benign primary pairs, Cancer samples (Primary and Metastatic samples)">
<option value="all" selected="true">All</option>
<option value="nocellline">No cell line</option>
<option value="pairs">Matched pairs</option>
<option value="cancer">Cancer Samples</option>
</param>
<param name="label" type="select" label="Gene
labels" help="Label rows of heatmap with Refseq Accession number, Gene symbols
or both">
<option value="both"
selected="true">Both</option>
<option value="gene">Gene</option>
<option value="access">Accession number</option>
</param>
</when>
</conditional>
<param name="gene" type="select" label="Gene
clustering" help="Cluster genes or to retain original ordering">
<option value="no" selected="true">No</option>
<option value="yes">Yes</option>
</param>
<param name="scaling" type="select" label="Heatmap
scaling" help="Chose how probes are scaled, median scaled (minus median), robust
z-score (minus median divide median absolute deviation), or z-score (minus mean divide
standard deviation">
<option value="median" selected="true">Median
scaled</option>
<option value="robustz">Robust z-score</option>
<option value="zscore">Z-score</option>
</param>
<conditional name="coloring">
<param name="coloring" type="select" label="Heatmap
colouring" help="How colouring is chosen, by heatmap i.e. colouring is specific
for heatmap, or fixed i.e. the same probes in different heatmaps will have the same
colour">
<option value="heatmap"
selected="true">Heatmap</option>
<option value="fixed">Fixed</option>
</param>
<when value="fixed">
<param name="limit" type="float" value="3"
label="Fixed limits" help="When chosing the fixed colour option, this value
is the limit for choosing colours" />
</when>
</conditional>
<param name="cexrow" type="float" label="Scale for Gene
(row) Labels" min="0" value="0.9" help="1 is normal, use a
lower value if the gene names are overlapping, a higher value if they are too small"
/>
<param name="cexcol" type="float" label="Scale for Sample
(column) Labels" min="0" value="1.0" help="1 is normal, use
a lower value if the sample names are overlapping, a higher value if they are too
small" />
<param name="pdf" type="boolean" label="PDF output"
help="Tick if PDF output is required in addition to html output" />
</inputs>
<outputs>
<data format="html" name="output_html" />
<data format="pdf" name="output_pdf">
<filter>pdf is True</filter>
</data>
</outputs>
</tool>
Here is the error message:
Error - <type 'exceptions.ValueError'>: ('No case matched value:',
'dataset', None)
URL:
http://uk-cri-lbio06/galaxy/tool_runner?tool_id=hm
File '/opt/local/home/webapp/galaxy/lib/galaxy/web/framework/middleware/error.py',
line 149 in __call__
app_iter = self.application(environ, sr_checker)
File
'/opt/local/home/webapp/galaxy/eggs/Paste-1.7.5.1-py2.7.egg/paste/recursive.py',
line 84 in __call__
return self.application(environ, start_response)
File
'/opt/local/home/webapp/galaxy/eggs/Paste-1.7.5.1-py2.7.egg/paste/httpexceptions.py',
line 633 in __call__
return self.application(environ, start_response)
File '/opt/local/home/webapp/galaxy/lib/galaxy/web/framework/base.py', line 132 in
__call__
return self.handle_request( environ, start_response )
File '/opt/local/home/webapp/galaxy/lib/galaxy/web/framework/base.py', line 190 in
handle_request
body = method( trans, **kwargs )
File
'/opt/local/home/webapp/galaxy/lib/galaxy/webapps/galaxy/controllers/tool_runner.py',
line 90 in index
template, vars = tool.handle_input( trans, params.__dict__ )
File '/opt/local/home/webapp/galaxy/lib/galaxy/tools/__init__.py', line 2116 in
handle_input
state, state_new = self.__fetch_state( trans, expanded_incoming, history,
all_pages=all_pages )
File '/opt/local/home/webapp/galaxy/lib/galaxy/tools/__init__.py', line 2230 in
__fetch_state
state = self.new_state( trans, history=history, all_pages=all_pages )
File '/opt/local/home/webapp/galaxy/lib/galaxy/tools/__init__.py', line 2015 in
new_state
self.fill_in_new_state( trans, inputs, state.inputs, history=history )
File '/opt/local/home/webapp/galaxy/lib/galaxy/tools/__init__.py', line 2024 in
fill_in_new_state
state[ input.name ] = input.get_initial_value( trans, context, history=history )
File '/opt/local/home/webapp/galaxy/lib/galaxy/tools/parameters/grouping.py', line
527 in get_initial_value
current_case = self.get_current_case( test_value, trans )
File '/opt/local/home/webapp/galaxy/lib/galaxy/tools/parameters/grouping.py', line
480 in get_current_case
raise ValueError( "No case matched value:", self.name, str_value )
ValueError: ('No case matched value:', 'dataset', None)
Many thanks.
Kind regards,
Anne.
--
Dr Anne Pajon - Bioinformatics Core
Cancer Research UK - Cambridge Institute
Li Ka Shing Centre, Robinson Way, Cambridge CB2 0RE
anne.pajon(a)cruk.cam.ac.uk | +44 (0)1223 769 631