在jsp下面显示来自webservice
的返回的HashMap值 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<%@page import="com.action.AuraDecisionWorsheetDetailsService"%>
<%@page import="com.action.AuraDecisionWorsheetDetailsServiceLocator"%>
<HTML>
<HEAD>
<TITLE></TITLE>
</HEAD>
<BODY>
<form name="form1" method="post" action='gawd.jsp'>
<center><h1>DETAILS</h1></center>
<%
try{
AuraDecisionWorsheetDetailsService psi = new AuraDecisionWorsheetDetailsServiceLocator();
com.action.AuraDecisionWorsheetDetails ps = psi.getAuraDecisionWorsheetDetails();
if(request.getParameter("PolId")!=null){
String pol_id=request.getParameter("PolId");
%>
<center><b>RESULT :</b> <%= ps.service(pol_id)%></center>
<% }else
{%>
<TABLE align="center">
<TR>
<TD>ENTER POLICY NUMBER</TD>
<TD><input type="text" name= "PolId" /></TD>
</TR>
<TR>
<TD colspan="2" align="center"> </TD>
</TR>
<TR>
<TD colspan="2" align="center"><input type="submit" value="Submit"></TD>
</TR>
</TABLE>
<% }
}catch(Exception exe)
{
exe.printStackTrace();
}
%>
</form>
</BODY>
</HTML>
收到以下异常
faultString: java.io.IOException: No serializer found for class com.solcorp.pathfinder.uidefs.UIElement in registry org.apache.axis.encoding.TypeMappingDelegate@c87621
Caused by: java.io.IOException: No serializer found for class com.solcorp.pathfinder.uidefs.UIElement in registry org.apache.axis.encoding.TypeMappingDelegate@c87621
Web服务接受一个参数,即pol_id并返回HashMap。 它是使用Apache Axis创建的。
答案 0 :(得分:2)
您在此代码中遇到了很多问题:
alert(pol_id);
而不打开任何脚本标记。 alert
是一个javascript函数,必须包含在<script></script>
。<TD><input type="text" name= "PolId" %></TD>
,显然应该是:<input type="text" name= "PolId" /></TD>
(请注意,我最后将%
更改为/
。<%= ps.service(pol_id)%>
您最后遗漏了;
。你有这个条件:
`if(request.getParameter("PolId")!=null){
String pol_id=request.getParameter("PolId")==null?"":request.getParameter("PolId");}`
您正在进行两次相同的检查,要么删除if或三元运算符。
解决这些问题(第一个问题实际上是一个最佳实践,所以你现在可以跳过它),如果你有更多问题,请回来发布你的问题。
修改强> 在您的代码中,您正在从服务中获得结果:
`<center><b>RESULT :</b> <%= ps.service(pol_id)%></center>`
但是如你所说它是一个Hashmap,所以我认为你不能直接回应它。你需要回显从中提取的值,所以试着这样做进行测试:
//in the java snippet
Map map = ps.service(pol_id);
...
//in the html
<center><b>RESULT :</b> <%= map.get(0)%></center>