2012-08-29 19 views
0

嗨,我必须更新我的微调值在MySQL数据库意味着它没有更新...它显示以下错误在Apache控制台窗口。更新mysql数据库中的android微调值

[ERROR] 2 
java.lang.ArrayIndexOutOfBoundsException: 2 
at org.apache.axis2.databinding.utils.BeanUtil.deserialize(BeanUtil.java:639) 
at org.apache.axis2.rpc.receivers.RPCUtil.processRequest(RPCUtil.java:153) 
at org.apache.axis2.rpc.receivers.RPCUtil.invokeServiceClass(RPCUtil.java:206) 
at org.apache.axis2.rpc.receivers.RPCMessageReceiver.invokeBusinessLogic(RPCMessageReceiver.java:117) 
at org.apache.axis2.receivers.AbstractInOutMessageReceiver.invokeBusinessLogic(AbstractInOutMessageReceiver.java:40) 
at org.apache.axis2.receivers.AbstractMessageReceiver.receive(AbstractMessageReceiver.java:110) 
at org.apache.axis2.engine.AxisEngine.receive(AxisEngine.java:181) 
at org.apache.axis2.transport.http.HTTPTransportUtils.processHTTPPostRequest(HTTPTransportUtils.java:172) 
at org.apache.axis2.transport.http.AxisServlet.doPost(AxisServlet.java:146) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:641) 
at javax.servlet.http.HttpServlet.service(HttpServlet.java:722) 
at org.apache.catalina.core.ApplicationFilterChain.internalDoFilter(ApplicationFilterChain.java:305) 
at org.apache.catalina.core.ApplicationFilterChain.doFilter(ApplicationFilterChain.java:210) 
at org.apache.catalina.core.StandardWrapperValve.invoke(StandardWrapperValve.java:224) 
at org.apache.catalina.core.StandardContextValve.invoke(StandardContextValve.java:169) 
at org.apache.catalina.authenticator.AuthenticatorBase.invoke(AuthenticatorBase.java:472) 
at org.apache.catalina.core.StandardHostValve.invoke(StandardHostValve.java:168) 
at org.apache.catalina.valves.ErrorReportValve.invoke(ErrorReportValve.java:98) 
at org.apache.catalina.valves.AccessLogValve.invoke(AccessLogValve.java:927) 
at org.apache.catalina.core.StandardEngineValve.invoke(StandardEngineValve.java:118) 
at org.apache.catalina.connector.CoyoteAdapter.service(CoyoteAdapter.java:407) 
at org.apache.coyote.http11.AbstractHttp11Processor.process(AbstractHttp11Processor.java:987) 
at org.apache.coyote.AbstractProtocol$AbstractConnectionHandler.process(AbstractProtocol.java:579) 
at org.apache.tomcat.util.net.JIoEndpoint$SocketProcessor.run(JIoEndpoint.java:307) 
at java.util.concurrent.ThreadPoolExecutor$Worker.runTask(ThreadPoolExecutor.java:886) 
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:908) 
at java.lang.Thread.run(Thread.java:680) 

这是我的Android代码:

public class InsertionExample extends Activity { 
private final String NAMESPACE = "http://xcart.com"; 
private final String URL = "http://192.168.1.168:8085/XcartLogin/services/update?wsdl"; 
private final String SOAP_ACTION = "http://xcart.com/insertData"; 
private final String METHOD_NAME = "insertData"; 
Button btninsert; 
String selectedItem; 

@Override 
public void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.main); 

    //get reference to the spinner from the XML layout 
    Spinner spinner = (Spinner) findViewById(R.id.spnMusketeers); 

    btninsert = (Button)findViewById(R.id.btn_insert); 
    btninsert.setOnClickListener(new View.OnClickListener() { 


     public void onClick(View v) { 

      SoapObject request = new SoapObject(NAMESPACE, METHOD_NAME); 
      PropertyInfo unameProp =new PropertyInfo(); 
      unameProp.setName("userName");//Define the variable name in the web service method 
      unameProp.setValue(selectedItem);//Define value for fname variable 
      unameProp.setType(String.class);//Define the type of the variable 
      request.addProperty(unameProp); 


       SoapSerializationEnvelope envelope = new SoapSerializationEnvelope(SoapEnvelope.VER11); 
       envelope.setOutputSoapObject(request); 
       HttpTransportSE androidHttpTransport = new HttpTransportSE(URL); 

       try{ 
       androidHttpTransport.call(SOAP_ACTION, envelope); 
        SoapPrimitive response = (SoapPrimitive)envelope.getResponse(); 

       TextView result = (TextView) findViewById(R.id.textView2); 
        result.setText(response.toString()); 

      } 
      catch(Exception e){ 

      } 



     } 
    }); 

    //attach the listener to the spinner 
    spinner.setOnItemSelectedListener(new MyOnItemSelectedListener()); 

    //Dynamically generate a spinner data 
    createSpinnerDropDown(); 

} 

//Add animals into spinner dynamically 
private void createSpinnerDropDown() { 

    //get reference to the spinner from the XML layout 
    Spinner spinner = (Spinner) findViewById(R.id.spinner1); 

    //Array list of animals to display in the spinner 
    List<String> list = new ArrayList<String>(); 

    list.add("Q"); 
    list.add("P"); 
    list.add("F"); 
    list.add("I"); 
    list.add("C"); 

    //create an ArrayAdaptar from the String Array 
    ArrayAdapter<String> dataAdapter = new ArrayAdapter<String>(this, 
      android.R.layout.simple_spinner_item, list); 
    //set the view for the Drop down list 
    dataAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item); 
    //set the ArrayAdapter to the spinner 
    spinner.setAdapter(dataAdapter); 
    //attach the listener to the spinner 
    spinner.setOnItemSelectedListener(new MyOnItemSelectedListener()); 

} 

public class MyOnItemSelectedListener implements OnItemSelectedListener { 

    public void onItemSelected(AdapterView<?> parent, View view, int pos, long id) { 

     selectedItem = parent.getItemAtPosition(pos).toString(); 

} 

    @Override 
    public void onNothingSelected(AdapterView<?> arg0) { 
     // TODO Auto-generated method stub 

    } 



    } 

    public void onNothingSelected(AdapterView<?> parent) { 
     // Do nothing. 
    } 
} 

这是我的web服务代码:

public class update { 

public String insertData(String status,String username){ 

    try{ 

    Class.forName("com.mysql.jdbc.Driver"); 
    Connection con = DriverManager.getConnection("jdbc:mysql://localhost:3306/xcart-432pro","root",""); 
    PreparedStatement statement = con.prepareStatement("UPDATE `xcart_orders` set `status` = '"+status+"' where `status` = 'Q'"); 
    int result = statement.executeUpdate(); 
    } 

    catch(Exception exc){ 
    System.out.println(exc.getMessage()); 
    } 

    return "Updation successfull!!"; 
    } 


} 

请帮我me..why更新不适合我......

+0

我得到了解决方案...我在这里有一个小问题..问题是:Web服务代码传递2字符串状态和用户名..但我不得不在错误地在dis line unameProp.setName(“userName”);上提及android代码。 ..现在我有替换上面的行是unameProp.setName(“状态”); ...新西兰我得到了解决方案。 –

回答

0

我得到了解决方案...我在这里有一个小问题..问题是:web服务代码传递2字符串状态和用户名..但我不得不提及上分辨率错误的Android代码unameProp.setName(“用户名”); ...现在我已经取代上面的线是unameProp.setName(“状态”); ... nw我得到的解决方案