public Sequence eval(Sequence contextSequence, Item contextItem) throws XPathException {
public Sequence eval(Sequence[] args, Sequence contextSequence) throws XPathException {
	public Sequence eval(Sequence contextSequence, Item contextItem)		throws XPathException {		RequestModule myModule =			(RequestModule) context.getModule(RequestModule.NAMESPACE_URI);		// request object is read from global variable $request		Variable var = myModule.resolveVariable(RequestModule.REQUEST_VAR);		if (var.getValue().getItemType() != Type.JAVA_OBJECT)			throw new XPathException("Variable $request is not bound to an Java object.");		// get parameters		String param = getArgument(0).eval(contextSequence, contextItem).getStringValue();		String defValue =			getArgument(1).eval(contextSequence, contextItem).getStringValue();		JavaObjectValue value = (JavaObjectValue) var.getValue().itemAt(0);		if (value.getObject() instanceof RequestWrapper) {			String[] values = ((RequestWrapper)value.getObject()).getParameterValues(param);			if (values == null || values.length == 0)				return new StringValue(defValue);			if (values.length == 1)				return XPathUtil.javaObjectToXPath(values[0]);			else				return XPathUtil.javaObjectToXPath(values);		} else			throw new XPathException("Variable $request is not bound to a Request object.");	}