这是我要添加的嵌套对象类型:{“user_id”:434,“firstname”:“harry”,“lastname”:“dex”,“username”:“pn1002”,“password”:“reset123”,“role”:{“rolename”:“user”}}
这是我的主文件:
EditText firstName, lastName, userName, passWord;
Spinner roleName;
Button submit;
String rolename;
String fName, lName, uName, pass, rName;
RequestQueue requestQueue;
static final String REQ_TAG = "VACTIVITY";
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_add_new_user);
submit = (Button) findViewById(R.id.btn_submit);
firstName = findViewById(R.id.et_fstName);
lastName = findViewById(R.id.et_lstName);
userName = findViewById(R.id.et_userName);
passWord = findViewById(R.id.et_passWord);
roleName = (Spinner) findViewById(R.id.et_roleName);
ArrayList<String> arrayList = new ArrayList<>();
arrayList.add("User");
arrayList.add("Engineer");
arrayList.add("Team Manager");
arrayList.add("Worker");
arrayList.add("Developer");
ArrayAdapter<String> arrayAdapter = new ArrayAdapter<String>(this, android.R.layout.simple_spinner_item, arrayList);
arrayAdapter.setDropDownViewResource(android.R.layout.simple_spinner_dropdown_item);
roleName.setAdapter(arrayAdapter);
roleName.setOnItemSelectedListener(new AdapterView.OnItemSelectedListener() {
@Override
public void onItemSelected(AdapterView<?> adapterView, View view, int i, long l) {
rolename = adapterView.getItemAtPosition(i).toString();
// Toast.makeText(adapterView.getContext(), "Selected: " + rolename, Toast.LENGTH_LONG).show();
}
@Override
public void onNothingSelected(AdapterView<?> adapterView) {
}
});
requestQueue = RequestQueueSingleton.getInstance(this.getApplicationContext())
.getRequestQueue();
submit.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
fName = firstName.getText().toString();
lName = lastName.getText().toString();
uName = userName.getText().toString();
pass = passWord.getText().toString();
rName = rolename;
addUserdata();
}
});
}
protected void onStop() {
super.onStop();
if (requestQueue != null) {
requestQueue.cancelAll(REQ_TAG);
}
}
public void addUserdata() {
JSONObject json = new JSONObject();
JSONObject jsonObject = new JSONObject();
try {
json.put("roleName", rName);
} catch (JSONException e) {
e.printStackTrace();
}
try {
jsonObject.put("role", json);
jsonObject.put("firstName",fName);
jsonObject.put("lastName",lName);
jsonObject.put("userName",uName);
jsonObject.put("password",pass);
} catch (JSONException e) {
e.printStackTrace();
}
JsonObjectRequest jsonObjectRequest = new JsonObjectRequest(Request.Method.POST, EndPoint.ADD_USER,jsonObject,
new Response.Listener<JSONObject>() {
@Override
public void onResponse(JSONObject response) {
try {
Toasty.success(AddNewUserActivity.this,"Saved successfully!"+response.get("message").toString(),Toasty.LENGTH_LONG).show();
} catch (JSONException e) {
e.printStackTrace();
}
}
}, new Response.ErrorListener() {
@Override
public void onErrorResponse(VolleyError error) {
Toast.makeText(AddNewUserActivity.this, error.getMessage(), Toast.LENGTH_SHORT).show();
}
});
jsonObjectRequest.setTag(REQ_TAG);
requestQueue.add(jsonObjectRequest);
}
我收到警告:
w/system.err:org.json.jsonobject.get(jsonobject.java:392)在com.project.project1.myapplication2.activities.addnewuseractivity.java:3.onresponse(addnewuseractivity.java:143)在com.project.project1.myapplication2.activities.addnewuseractivity.java:139)w/system.err:at executorDelivery.java:106)在Android.os.handler.handleCallback(handler.java:873)在Android.os.handler.dispatchMessage(handler.java:99)在Android.os.handler.dispatchMessage(handler.java:214)在Android.app.activitythread.main(activitythread.java:7078)在java.lang.reflect.Method.invoke(原生方法)W/system.err:at init.java:974)
您的rolename
是null
直到您从spinner
中选择它,这意味着您的rname
最初也是null
,这将引发错误。尝试在单击旋转器
之前将其设置为某个值
您好,我无法在数据库中添加多个用户。我想添加我的ArrayList中存在的所有用户。我的代码是: 我的模型是: 因此,我只将第一个用户添加到数据库中,而不将其他用户添加到数据库中。如何在数据库中添加所有用户?
问题内容: 我有一个WSDL文件,其中包含以下条目: 我使用具有以下设置的CXF Codegen插件: 生成的Java代码如下所示: 至于其他答案,我可以放置绑定文件。因此,我创建了一个包含以下内容的绑定文件: 并且我在POM.XML中添加了以下代码块: 之后,我收到错误消息: 因此,我不知道如何准确地描述当complexType为OutputMapping1时,将@XmlRootElement放
我使用带有以下设置的CXF Codegen插件: 生成的java代码如下所示: 问题是这里缺少@XmlRootelement。还有另一个类似的问题 maven-cxf-codegen-plugin,使用Jaxb绑定为所有生成的类添加继承 注释CXF(wsdl2java)生成的包 在外部为类创建jaxb注释 因此,我不知道如何准确地描述当complexType是OutputMapping1时,将@X
问题内容: 有什么方法可以在JSON中嵌套对象,因此我不必从所有内容中制成数组?为了能够无错误地解析我的对象,我似乎需要这样的结构: 如果我将此对象提取到一个名为“结果”的变量中,则必须像这样访问嵌套的对象: 和 这对我来说似乎很笨拙和多余,如果可能的话,我希望: 和 但是,当一切都是数组时,如何直接使用对象键?在我困惑和未受教育的头脑中,这样的事情似乎更合适: 我可能在这里误解了一些基本知识,但
问题内容: 在扬帆起航时,我还没有DB的所有连接信息。 有没有办法让配置值依赖于Promise或在风帆提升完成后动态创建连接? 很明显,如果尚不可用,我显然必须添加一个策略或钩子来处理对需要该模型的路由的请求,但是在这一点上,我什至看不到如何扬帆,直到我已经知道连接信息(它必须在配置中)。 我希望我缺少一种动态创建连接和连线模型的方法。 问题答案: 是; sails.js中的两件事允许您执行此操作
我正在Android Studio中做一个项目,我需要在一个RecyclerView中列出几部电影(在本例中,来自RESTful API的几部意味着20)。现在我已经设置好了所有内容,我的静态虚拟内容显示在使用cardview的recyclerview中。然而,当我切换到RESTful API时,我的真实数据(来自RESTful API)会出现问题。这是我的主要活动。带有手动数据的java代码(显