0

我想使用 html 或 jsp 将表单的数据作为 xml 发布到服务器。我曾尝试在 html 中发布数据,但我能够获取 xml 但不能发布 xml。我已经给出了我在下面编写的代码。我正在使用 Rest 端点。

<html>
<head> 
<script type="text/javascript">
function generateXML(formName) {

var str="";

for(i=0; i<document.myForm.elements.length; i++)
{
   var fieldName = document.myForm.elements[i].name;
   var fieldValue = document.myForm.elements[i].value;
   str += "<" + fieldName + ">" ;
    str += fieldValue ;
   str += "</" + fieldName + ">" ;
}
document.getElementById('xml').value = str;
}
</script>
</head>
<body>
<h3>Conduit HTML Enrollment RESTful Web Service Handle Test</h3>
<form name="myForm" method="get" action="http://pc161742:8080/rest/services/htmlTestApp/htmltestProcess:1.0">
Token:<input type="text" name="token"><br />
FirstName:<input type="text" name="Fname"><br /> 
<input type="hidden" name="xml" id="xml" value=""/>
<input type="submit" onClick="generateXML(this)"/>
</form>
</body>
</html>

我收到类似“com.adobe.idp.dsc.DSCRuntimeException:内部错误”的错误。请让我知道我做错了什么。

谢谢

4

1 回答 1

2

尝试JQuery.ajax

var ajaxurl="http://pc161742:8080/rest/services/htmlTestApp/htmltestProcess:1.0";
var str="";

for(i=0; i<document.myForm.elements.length; i++)
{
   var fieldName = document.myForm.elements[i].name;
   var fieldValue = document.myForm.elements[i].value;
   str += "<" + fieldName + ">" ;
    str += fieldValue ;
   str += "</" + fieldName + ">" ;
}

$.ajax({
    url: ajaxurl,
    data: str, 
    type: 'POST',
    contentType: "text/xml",
    dataType: "xml",
    success : parse_result,
    error : show_error
}); 

function parse_result(xml){
    //
}
function show_error(){
    //
}

另请参阅jQuery ajax 发布到 Web 服务

于 2013-01-07T06:59:04.727 回答