Skip to content

XML-RPC server method arguments not parsed correctly (unless I haven't defined the interface correctly) #16

Open
@daluu

Description

/* how to define go gorilla/rpc func signature if XML-RPC args is comprised as
 * 2 arguments: a string argument for actual keyword/method to execute, and
 * an array of any XML-RPC type, to be the actual args for that keyword
 * e.g. sample input
 * <methodCall><methodName>RunKeyword</methodName>
 *   <params>
 *     <param><value><string>KeywordNameToExecute</string></value></param>
 *     <param><value><array><data>
 *       <value><string>keyword_arg1</string></value>
 *       <value><string>keyword_arg2</string></value>
 *     </data></array></value></param>
 *   </params></methodCall>
 */
func (h *RobotRemoteService) RunKeyword(r *http.Request, args ...interface{}, reply *runKeywordReturnType) error {

I'm a novice in go, gorilla/rpc just states that args must be *args. In the above example, args isn't really a struct with members that can be translated to this package's XML-RPC struct. It's not quite an entire array either. The sample signature given report syntax error in my go IDE/editor (Atom).

Or is there no way to do the intended mapping mentioned?

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions