Каково лучшее решение для этого сценария: у меня есть веб-сервис на основе SOAP, реализованный в Netbeans, где клиент должен установить несколько флажков, которые затем отправляются на сервер и сохраняются.Предположим, что мой веб-сервис имеет эти флажки, где можно выбрать все или некоторые из них:
Этническая принадлежность: 1. Кавказский 2. Юго-восточный азиатский 3. Южно-азиатский 4. Африканский 5. Другой
в другой частитого же веб-сервиса я установил флажки, относящиеся к
Пол: 1.Maschio 2.Femmina
Как показано ниже, где можно выбрать один или оба , но решениеМне кажется, что это очень сложно для этнической части, и у меня есть другие части с еще большим количеством флажков!
Код на стороне клиента:
private void salvaActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
disease=malattia.getText();
etastr=eta.getText();
age=java.lang.Integer.parseInt(etastr);
description=descrizione.getText();
//Here i'm initiating the array using sexint as the dimension
sexarra=new String[sexint];
if(sexint==1)
sexarra[0]=sexone;
else if(sexint==0)
JOptionPane.showMessageDialog(null, "Bisogna specificare almeno un valore del campo sesso", "Errore", JOptionPane.ERROR_MESSAGE);
else{
sexarra[0]=sexone;
sexarra[1]=sextwo;}
// I define the parameters and afterwards send them to server
Vector parametri = new Vector();
parametri.addElement(new Parameter("malattia", String.class, disease, null));
parametri.addElement(new Parameter("age", int.class, age, null));
parametri.addElement(new Parameter("descrizione", String.class, description, null));
parametri.addElement(new Parameter("sexarra",String[].class, sexarra, null));
//Code related to calculating sexint which is used above as the dimension to array
private void femminaActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
if(femmina.isSelected()){
if(sexint==0){
sexint++;
sexone=femmina.getText();
}
else if(sexint==1){
sexint++;
sextwo=femmina.getText();
}
else
sexint--;
}
}
private void maschioActionPerformed(java.awt.event.ActionEvent evt) {
// TODO add your handling code here:
if(maschio.isSelected()){
if(sexint==0){
sexint++;
sexone=maschio.getText();
}
else if(sexint==1){
sexint++;
sextwo=maschio.getText();
}
else
sexint--;
}
}
Код, относящийся к стороне сервера:
public String aggiungi_malattia(String malattia, int eta, String descrizione, String[] sexarra) {
String ris = "no";
String q = null, w = null;
String errore = connetti();
if(sexarra.length == 2){
q = "INSERT INTO malattia (nome, eta, descrizione, sesso) "
+ "VALUES ('" + malattia + "','" + eta + "','" + descrizione + "','" + sexarra[0] + "')";
w="INSERT INTO malattia (nome, eta, descrizione, sesso) "
+ "VALUES ('" + malattia + "','" + eta + "','" + descrizione + "','" + sexarra[1] + "')";
}
{
q = "INSERT INTO malattia (nome, eta, descrizione, sesso) "
+ "VALUES ('" + malattia + "','" + eta + "','" + descrizione + "','" + sexarra[0] + "')";
Спасибо всем за потраченное время и усилия!