400 数据库报的? webserver报的?

解决方案 »

  1.   

    400 数据库报的? webserver报的?
    -------------400应该是webserver报的
    虽然是页面弹的警告框,但是我在构造函数里加调试,程序已经走进去,应该不是通讯协议400的通讯失败
    虚心请教,麻烦指点 
      

  2.   

    HTTP Status-Code 400: Bad Request.可能你你在使用ajax时 写的url不正确
      

  3.   

    HTTP Status-Code 400: Bad Request. 可能你你在使用ajax时 写的url不正确------------
    能够具体些吗?这个url在那里?
    我在webshop里给的demo的页面里确实找到了一个叫pageurl的属性,可我生成的htm页面却没有这个属性,搜索demo这张页面代码也没有找到pageurl这个属性
      

  4.   

    我也是个新手,你可以尝试如下步骤: 1 测试不用ajax能不能连接到你的数据库,主要是测试环境是否配置成功。
     2 既然是用到了js那就多用alert()语句,按ajax走的流程测试是否数据传输成功。(寻找错误发生的地方)
     3 ajax也没什么了不起,同样也是事件触发的,不要怕它。   祝你早点解决问题。
      

  5.   

    java技术讨论区 
    QQ群:49150201 
      

  6.   

    400应该是请求出错--一般指URL语法错误.
    应该和你上面的类没有关系 .
    你找一下AJAX发送URL的地方,检查一下.
      

  7.   

    HTTP Status-Code 400: Bad Request. 可能你你在使用ajax时 写的url不正确,给页面的url贴上来看看就知道了哈
      

  8.   

    java技术讨论区  
    QQ群:49150201
    --------------先前也有加过,感觉技术群不技术,广告到是一大堆,感谢好意
    还是喜欢这儿,藏龙卧虎
      

  9.   

    以下是页面代码:<html>
    <head>
    <meta http-equiv="Content-Type" content="text/html;charset=GBK">
    <link href="jcl/STYLE.CSS" rel="stylesheet" type="text/css">
    <title></title>
    </head><body onload='afterload();'>
    </body>
    </html><script language=javascript type="text/javascript" src="jcl/System.js"></script>
    <script language=javascript type="text/javascript">function afterload(){
    init();
    }//Notice:function init() is auto clear and build, please don't write your code here; 
    function init(){
    window.VirtualPath="/project";
    window.DataSet1=new DataSet();
    window.DBGrid1=new DBGrid();
    window.DBNavigator1=new DBNavigator();
    DataSet1.Name='DataSet1';
    DataSet1.MaxRows=5;
    DataSet1.DataSource='test.ajaxServer';
    DataSet1.Async=true;
    DBGrid1.Name='DBGrid1';
    DBGrid1.style.height='170';
    DBGrid1.style.width='374';
    DBGrid1.style.position='absolute';
    DBGrid1.style.left='49';
    DBGrid1.style.top='124';
    DBGrid1.DataSet=DataSet1;
    DBNavigator1.Name='DBNavigator1';
    DBNavigator1.style.height='29';
    DBNavigator1.style.width='376';
    DBNavigator1.style.position='absolute';
    DBNavigator1.style.left='48';
    DBNavigator1.style.top='76';
    DBNavigator1.DataSet=DataSet1;
    DataSet1.Open();
    window.status='Thank you for trying AJAX WebShop Personal Version, please read the license carefully and register it as comercial version to get more usage.';
    }
    </script>
    <script language=javascript type="text/javascript" src="jcl/DataSet.js"></script>
    <script language=javascript type="text/javascript" src="jcl/Control.js"></script>
    <script language=javascript type="text/javascript" src="jcl/DBControl.js"></script>
    <script language=javascript type="text/javascript" src="jcl/DateTimeInput.js"></script>
    <script language=javascript type="text/javascript" src="jcl/DBGrid.js"></script>
    <script language=javascript type="text/javascript" src="jcl/ToolBar.js"></script>
    <script language=javascript type="text/javascript" src="jcl/DBNavigator.js"></script>
      

  10.   

    以下是建立连接的jsfunction QRY_makequery(q,db,qr)
    {
      var p,s,el,d=this.Database;
      if(d){
       el=q.createElement('DATABASE');var exist=false;
       s=d.Name;
      for(var i=0;i<db.childNodes.length;i++){
    if(db.childNodes.item(i).getAttribute('name')==s){exist=true;break;}
      }
      if(exist==false){
    el.setAttribute('name',d.Name);
    el.setAttribute('alis',d.AliasName);
    el.setAttribute('connectionurl',d.Url);
    el.setAttribute('driver',d.Driver);
        db.appendChild(el);
      }
      }
      el=q.createElement('QUERY');
      s=this.Name;if(s)el.setAttribute('name',s);
      if(d){s=d.Name;el.setAttribute('database',s);}
      s=this.SQL;if(s)el.setAttribute('query',s);
      s=this.BeanName;if(s)el.setAttribute('beanname',s);
      s=this.MaxRows;if(s!=null)el.setAttribute('maxrows',s);
      s=this.RecNo;if(s!=null)el.setAttribute('recno',s);s=null;
      if(this.MasterLink)s=this.MasterLink.Name;if(s){el.setAttribute('masterlink',s);}else el.setAttribute('masterlink','');
      s=this.MasterFields;if(s)el.setAttribute('masterfield',s);
      s=this.DetailFields;if(s)el.setAttribute('detailfield',s);
      qr.appendChild(el);p=el;this.qrynode=el;
      if(!this.metadata)
      {
      if(this.Fields.Count>0)this.metadata=q.createElement('FIELDS');
      for(var i=0;i<this.Fields.Count;i++)
      {
           var el_field=q.createElement('FIELD');
    el_field.setAttribute('name',this.Fields.Fieldx[i].FieldName);
    el_field.setAttribute('type',this.Fields.Fieldx[i].Type);
    this.metadata.appendChild(el_field);
      }   if(this.metadata)p.appendChild(this.metadata);
      }
      var l=this.Params.Count;
      if(l>0){el=q.createElement('PARAMS');p.appendChild(el);p=el;}
      for(var i=0;i<l;i++){
        el=q.createElement('PARAM');
        s=this.Params.Paramx[i].Name;if(s)el.setAttribute('name',s);
    s=this.Params.Paramx[i].Value;if(s!=null)el.setAttribute('value',s);
    s=this.Params.Paramx[i].Type;if(s)el.setAttribute('type',s);
    p.appendChild(el);

      } 
      if(this.pDets)
    for(var i=0;i<this.pDets.length;i++)this.pDets[i].makequery(q,db,qr);
    //  alert(q.xml);
    }可我感觉js应该没什么问题,我.java已经接收到了请求,在后台已经可以用system.out.println的控制台输出语句调试了