关于(Ljava/lang/String;Ljava/lang/String;)Ljava/util/List; 错误

异常: 

“/AcesysWeb”应用程序中的服务器错误。

com.ericliu.DAO.ProductDAO.searchCategoryAndLikeName(Ljava/lang/String;Ljava/lang/String;)Ljava/util/List;

说明: 执行当前 Web 请求期间,出现未处理的异常。请检查堆栈跟踪信息,以了解有关该错误以及代码中导致错误的出处的详细信息。

异常详细信息: System.ServiceModel.FaultException: com.ericliu.DAO.ProductDAO.searchCategoryAndLikeName(Ljava/lang/String;Ljava/lang/String;)Ljava/util/List;

源错误:

行 29:             //MessageBox.Show("查询条件:type==" + Session["searchTypeID"].ToString() + "||字段==" + Session["searchCondition"].ToString());
行 30: 
行 31:             ProductsService.Product[] productsArray2 = productsService.getProductByCategoryAndlikename(getSearchProductsReq).@return;
行 32: 
行 33:             GridView_searchProductsList.DataSource = productsArray2;


源文件: d:/我的文档/Visual Studio 2008/WebSites/AcesysWeb/product/products_search_show.aspx.cs    行: 31

堆栈跟踪:

[FaultException: com.ericliu.DAO.ProductDAO.searchCategoryAndLikeName(Ljava/lang/String;Ljava/lang/String;)Ljava/util/List;]
   System.Runtime.Remoting.Proxies.RealProxy.HandleReturnMessage(IMessage reqMsg, IMessage retMsg) +7599295
   System.Runtime.Remoting.Proxies.RealProxy.PrivateInvoke(MessageData& msgData, Int32 type) +275
   ProductsService.ProductDAOServicePortType.getProductByCategoryAndlikename(getProductByCategoryAndlikenameRequest request) +0
   ProductsService.ProductDAOServicePortTypeClient.ProductsService.ProductDAOServicePortType.getProductByCategoryAndlikename(getProductByCategoryAndlikenameRequest request) +20
   product_products_search_show.Page_Load(Object sender, EventArgs e) in d:/我的文档/Visual Studio 2008/WebSites/AcesysWeb/product/products_search_show.aspx.cs:31
   System.Web.Util.CalliHelper.EventArgFunctionCaller(IntPtr fp, Object o, Object t, EventArgs e) +14
   System.Web.Util.CalliEventHandlerDelegateProxy.Callback(Object sender, EventArgs e) +35
   System.Web.UI.Control.OnLoad(EventArgs e) +99
   System.Web.UI.Control.LoadRecursive() +50
   System.Web.UI.Page.ProcessRequestMain(Boolean includeStagesBeforeAsyncPoint, Boolean includeStagesAfterAsyncPoint) +627

 


版本信息: Microsoft .NET Framework 版本:2.0.50727.4927; ASP.NET 版本:2.0.50727.4927

 

 

 

 

解决方法:

1、出现(Ljava/lang/String;Ljava/lang/String;)Ljava/util/List;

     表明是数组处理出了问题;

2、由于Webservice不能传递List,所以接收Java端列表数据集合时,要注意在java端

     转化为数组形式传递之;

3、这个问题出现主要是java里面的List的泛型出现问题;

     关于List,可以参照网上的资料;

4、本人检查自己代码,发现java服务端获取数组list之后,确实转化为Array[]了,但是

     仍然出现了上面的问题,调试了半天发现自己使用List时没有指定类型,只是如:

         List  ls = pdao.searchCategory(category);

     尝试加上类型:

         List  ls = pdao.searchCategory(category);

     将其他类似的地方全部加上强类型;这样.net端调用就不会出现这个问题;

教训,做事不能偷懒;

 

 

 

 

 

 

 

 

 

 

 

 

 

 

 

你可能感兴趣的:(编程心得)