p = findMessagePart(context, operations, dr.getName(), param);
}
if (p == null)
{
throw new XFireFault("Parameter " + dr.getName() + " does not exist!",
XFireFault.SENDER);
}
param++;
parameters.add( context.getService().getBindingProvider().readParameter(p, dr, context) );
if (dr.getEventType() == XMLStreamReader.END_ELEMENT) nextEvent(dr);
}
if (opInfo == null && !clientMode)
{
opInfo = findOperation(operations, parameters);
if (opInfo == null)
{
StringBuffer sb = new StringBuffer("Could not find appropriate operation for request ");
//we know we have at least one operation, right?
sb.append(((OperationInfo)operations.iterator().next()).getName());
sb.append('(');
for(Iterator iterator = parameters.iterator(); iterator.hasNext();)
{
sb.append(iterator.next().getClass().getName());
if(iterator.hasNext())
{
sb.append(", ");
}
}
sb.append(") in service '");
sb.append(context.getService().getSimpleName());
sb.append('\'');
throw new XFireFault(sb.toString(), XFireFault.SENDER);
}
setOperation(opInfo, context);
}