mardi 23 juin 2015

Android returns java.lang.NullPointerException

I am so stucked now. I got error NullPointerException on buttonClick. I could not identify where is the null.Below are my codes for your references. I have stucked with this error for 2 weeks now. :(

putItem.java

 public void putItem(String Title, String Author, String Year, String Supervisor, String Program)
    {
        Map<String, AttributeValue> item = new HashMap<>();

        item.put("Id", new AttributeValue().withN("1"));
        item.put("Title", new AttributeValue().withS(Title));
        item.put("Author", new AttributeValue().withS(Author));
        item.put("Year", new AttributeValue().withS(Year));
        item.put("Supervisor", new AttributeValue().withS(Supervisor));
        item.put("Program", new AttributeValue().withS(Program));

        PutItemRequest itemRequest = new PutItemRequest().withTableName(
                tableName).withItem(item);
        client.putItem(itemRequest);
        item.clear();
    }

MainActivity.java

public class MainActivity extends Activity
{
    ///////////////////////////////////////////////////////////////////////////////////////////////
    final EditText title = (EditText)findViewById(R.id.title_View);
    final EditText author = (EditText)findViewById(R.id.author_View);
    final EditText year = (EditText)findViewById(R.id.year_View);
    final EditText supervisor = (EditText)findViewById(R.id.super_View);
    final Spinner prog = (Spinner)findViewById(R.id.prog_Spinner);

    final String tajuk = title.getText().toString();
    final String au = author.getText().toString();
    final String tahun = year.getText().toString();
    final String selia = supervisor.getText().toString();
    final String program = prog.getSelectedItem().toString();

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

        Button upload = (Button)findViewById(R.id.upload_Btn);

        upload.setOnClickListener(new View.OnClickListener() {
            @Override
            public void onClick(View v) {
                try {
                    Toast.makeText(getApplicationContext(), "Save to Table", Toast.LENGTH_SHORT).show();
                    Task obj = new Task();
                    obj.execute();

                } catch (Exception e) {
                    e.printStackTrace();
                }
            }


        });


    }

    public class Task extends AsyncTask<String, Void, String> {



        @Override
        protected String doInBackground(String... params) {
            Looper.prepare();

            try {

                DynamoDB db = new DynamoDB();

                db.putItem(tajuk,au,tahun,selia,program);


            } catch (Exception e) {
                e.printStackTrace();
            }
            Looper.loop();
            return null;

        }

        protected void onPostExecute(String page) {
            // onPostExecute
        }
    }


}

LOGCAT ERROR

06-24 12:53:25.321  23051-23079/com.example.user.test2 W/System.err﹕ java.lang.NullPointerException
06-24 12:53:25.331  23051-23079/com.example.user.test2 W/System.err﹕ at com.example.user.test2.DynamoDB.putItem(DynamoDB.java:61)
06-24 12:53:25.331  23051-23079/com.example.user.test2 W/System.err﹕ at com.example.user.test2.MainActivity$Task.doInBackground(MainActivity.java:66)
06-24 12:53:25.331  23051-23079/com.example.user.test2 W/System.err﹕ at com.example.user.test2.MainActivity$Task.doInBackground(MainActivity.java:44)
06-24 12:53:25.331  23051-23079/com.example.user.test2 W/System.err﹕ at android.os.AsyncTask$2.call(AsyncTask.java:288)
06-24 12:53:25.331  23051-23079/com.example.user.test2 W/System.err﹕ at java.util.concurrent.FutureTask.run(FutureTask.java:237)
06-24 12:53:25.331  23051-23079/com.example.user.test2 W/System.err﹕ at android.os.AsyncTask$SerialExecutor$1.run(AsyncTask.java:231)
06-24 12:53:25.331  23051-23079/com.example.user.test2 W/System.err﹕ at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1112)
06-24 12:53:25.331  23051-23079/com.example.user.test2 W/System.err﹕ at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:587)
06-24 12:53:25.331  23051-23079/com.example.user.test2 W/System.err﹕ at java.lang.Thread.run(Thread.java:841)



Aucun commentaire:

Enregistrer un commentaire