Note that there are some explanatory texts on larger screens.

plurals
  1. POError NullPointerException
    primarykey
    data
    text
    <p>i created Register Form, that accept uploading image/avatar . But i got this error : <code>[NullPointerException: null]</code> </p> <p>when i accept the form. Here are my codes :</p> <p>----Register.java----</p> <pre><code>public class Register extends Controller{ static Form&lt;Users&gt; form = form(Users.class); public static Result blank() { return ok(register.render(form)); } public static Result submit() throws IOException { Form&lt;Users&gt; filledForm = form.bindFromRequest(); MultipartFormData body = request().body().asMultipartFormData(); FilePart picture = body.getFile("picture"); if (picture != null) { String fileName = picture.getFilename(); String contentType = picture.getContentType(); File file = picture.getFile(); // ERROR MARKED IN THIS LINE : NullPointerException String orig = file.getAbsolutePath(); String dest = "/home/thangnk/demo/public/upload/"+fileName; } //Copy file into "demo/public/upload/" folder InputStream in = new FileInputStream(orig); OutputStream out = new FileOutputStream(dest); byte[] buf = new byte[1024]; int len; while ((len = in.read(buf)) &gt; 0) { out.write(buf, 0, len); } in.close(); out.close(); } // Check accept conditions if(!"true".equals(filledForm.field("accept").value())) { filledForm.reject("accept", "You must accept the terms and conditions"); } // Check repeated password if(!filledForm.field("password").valueOr("").isEmpty()) { if(!filledForm.field("password").valueOr("").equals(filledForm.field("repeatPassword").value())) { filledForm.reject("repeatPassword", "Password don't match"); } } // Check if the username is valid if(!filledForm.hasErrors()){ String name = filledForm.field("username").value(); Finder&lt;String, Users&gt; find = new Finder&lt;String, Users&gt;(String.class, Users.class); List&lt;Users&gt; users = find.where().like("username", '%'+ name +'%').findList(); if(!(users!=null &amp;&amp; users.isEmpty())){ filledForm.reject("username", "This username is already taken"); } } if(filledForm.hasErrors()) { return badRequest(register.render(filledForm)); } else{ Users.create(filledForm.get()); return ok(register_result.render()); } } </code></pre> <p>----Users.java----</p> <pre><code>@Entity public class Users extends Model{ @Id public Long id; @Constraints.Required @NotNull public String username; @Constraints.Required @NotNull @Constraints.Email public String email; @Constraints.Required @Constraints.MinLength(6) @NotNull public String password; @Constraints.Required public String path; public Users(){} public Users(String username,String email,String password){ this.username=username; this.email=email; this.password=password; } public static Finder&lt;Long,Users&gt; find = new Finder&lt;Long,Users&gt;(Long.class, Users.class); public static List&lt;Users&gt; all() { return new ArrayList&lt;Users&gt;(); } public static void create (Users user){ user.save(); } } </code></pre> <p>Register.scala.html</p> <pre><code> @helper.form(action = routes.Register.submit()) { &lt;h3&gt; Create Account Informations &lt;/h3&gt; @inputText( signupForm("username"), '_label -&gt; "", '_help -&gt; "Please choose a valid username.", '_error -&gt; signupForm.globalError, 'placeholder -&gt;"Username" ) @inputText( signupForm("email"), '_label -&gt; "", '_help -&gt; "Enter a valid email address.", '_error -&gt; signupForm.error("email"), 'placeholder -&gt;"Email" ) @inputPassword( signupForm("password"), '_label -&gt; "", '_help -&gt; "A password must be at least 6 characters. ", '_error -&gt; signupForm.error("password"), 'placeholder -&gt;"Password" ) @inputPassword( signupForm("repeatPassword"), '_label -&gt; "", '_help -&gt; "Please repeat your password again.", '_error -&gt; signupForm.error("password"), 'placeholder -&gt;"Repeat password" ) @inputFile( signupForm("picture"), '_label -&gt; "", '_help -&gt; "Max size 120x130px", '_error -&gt; signupForm.error("picture"), 'placeholder -&gt;"Upload file" ) &lt;a href="#"&gt;&lt;h3&gt;Terms and conditions&lt;/h3&gt;&lt;/a&gt; @checkbox( signupForm("accept"), '_label -&gt; None, '_text -&gt; "You aggree the Terms and conditions", '_showConstraints -&gt; false ) &lt;div class="actions"&gt; &lt;input type="submit" class="button" value="Register"&gt; &lt;a href="@routes.Register.blank"&gt;&lt;input class="button" type="button" value="Reset"&gt;&lt;/a&gt; &lt;a href="@routes.Application.index"&gt;&lt;input class="button" type="button" value="Cancel"&gt;&lt;/a&gt; &lt;/div&gt; } </code></pre> <p>Help me sloved it. Thanks alot!!!<br> P/s : If i remove upload file, it's work fine.</p>
    singulars
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    plurals
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
    1. This table or related slice is empty.
 

Querying!

 
Guidance

SQuiL has stopped working due to an internal error.

If you are curious you may find further information in the browser console, which is accessible through the devtools (F12).

Reload