Lets take a closer look ...
What Apache JSP are we using ...
$ mvn dependency:tree
[INFO] Scanning for projects...
[INFO]
[INFO] ------------------------------------------------------------------------
[INFO] Building embedded-jetty-jsp 1-SNAPSHOT
[INFO] ------------------------------------------------------------------------
[INFO]
[INFO] --- maven-dependency-plugin:2.8:tree (default-cli) @ embedded-jetty-jsp ---
[INFO] org.eclipse.jetty.demo:embedded-jetty-jsp:jar:1-SNAPSHOT
[INFO] +- javax.servlet:javax.servlet-api:jar:3.1.0:compile
[INFO] +- junit:junit:jar:4.12:test
[INFO] | \- org.hamcrest:hamcrest-core:jar:1.3:test
[INFO] +- org.eclipse.jetty:jetty-annotations:jar:9.4.5.v20170502:compile
[INFO] | +- org.eclipse.jetty:jetty-plus:jar:9.4.5.v20170502:compile
[INFO] | | \- org.eclipse.jetty:jetty-jndi:jar:9.4.5.v20170502:compile
[INFO] | +- javax.annotation:javax.annotation-api:jar:1.2:compile
[INFO] | +- org.ow2.asm:asm:jar:5.1:compile
[INFO] | \- org.ow2.asm:asm-commons:jar:5.1:compile
[INFO] | \- org.ow2.asm:asm-tree:jar:5.1:compile
[INFO] +- org.eclipse.jetty:jetty-webapp:jar:9.4.5.v20170502:compile
[INFO] | +- org.eclipse.jetty:jetty-xml:jar:9.4.5.v20170502:compile
[INFO] | \- org.eclipse.jetty:jetty-servlet:jar:9.4.5.v20170502:compile
[INFO] | \- org.eclipse.jetty:jetty-security:jar:9.4.5.v20170502:compile
[INFO] | \- org.eclipse.jetty:jetty-server:jar:9.4.5.v20170502:compile
[INFO] | +- org.eclipse.jetty:jetty-http:jar:9.4.5.v20170502:compile
[INFO] | \- org.eclipse.jetty:jetty-io:jar:9.4.5.v20170502:compile
[INFO] +- org.eclipse.jetty:apache-jsp:jar:9.4.5.v20170502:compile
[INFO] | +- org.eclipse.jetty:jetty-util:jar:9.4.5.v20170502:compile
[INFO] | +- org.eclipse.jetty.toolchain:jetty-schemas:jar:3.1:compile
[INFO] | +- org.mortbay.jasper:apache-jsp:jar:8.5.9.1:compile
[INFO] | | \- org.mortbay.jasper:apache-el:jar:8.5.9.1:compile
[INFO] | \- org.eclipse.jdt.core.compiler:ecj:jar:4.4.2:compile
[INFO] \- org.eclipse.jetty:apache-jstl:pom:9.4.5.v20170502:compile
[INFO] +- org.apache.taglibs:taglibs-standard-spec:jar:1.2.5:compile
[INFO] \- org.apache.taglibs:taglibs-standard-impl:jar:1.2.5:compile
[INFO] ------------------------------------------------------------------------
[INFO] BUILD SUCCESS
[INFO] ------------------------------------------------------------------------
[INFO] Total time: 4.895 s
[INFO] Finished at: 2017-09-13T23:19:10Z
[INFO] Final Memory: 14M/491M
[INFO] ------------------------------------------------------------------------
That would be Apache Jasper JSP 8.5.9 per above.
Lets see what Apache Jasper JSP 8.5.9 does with scratchDir ...
Yup, you still have a scratchDir.
Your change to remove the "javax.servlet.context.tempdir" attribute has only moved the location of the scratchDir from a place you know and recognize to one that is defaulted by the implementation based on your os/shell environment's specific configuration.
You are essentially at line #674 (which now returns null), and then lines #675 thru #680 just defaults to "java.io.tmpdir" for the scratchDir.