diff --git a/component/java/buildout.cfg b/component/java/buildout.cfg
index 42fe4a8c76b9e51a762417c9ebfaf84c741149c1..da200727ffc06ab0172e47eaa56f6f7e27c8222e 100644
--- a/component/java/buildout.cfg
+++ b/component/java/buildout.cfg
@@ -9,22 +9,14 @@ slapos_promisee =
   directory:bin
   directory:lib
   directory:man
-  directory:plugin
-  directory:javaws
-  file:lib/rt.jar
+  directory:jre
+  file:jre/lib/rt.jar
   file:bin/java
-x86 = http://javadl.sun.com/webapps/download/AutoDL?BundleId=52240 0bd27d325c5ce11ce863d982ad052f7f
-x86-64 =  http://javadl.sun.com/webapps/download/AutoDL?BundleId=52242 a4d929bc4d6511290c07c3745477b77b
+  file:bin/javac
+x86 = http://download.oracle.com/otn-pub/java/jdk/7/jdk-7-linux-i586.tar.gz f97244a104f03731e5ff69f0dd5a9927
+x86-64 = http://download.oracle.com/otn-pub/java/jdk/7/jdk-7-linux-x64.tar.gz b3c1ef5faea7b180469c129a49762b64
 script =
   if not self.options.get('url'): self.options['url'], self.options['md5sum'] = self.options[guessPlatform()].split(' ')
-  download_file = self.download(self.options['url'], self.options.get('md5sum'))
-  extract_dir = tempfile.mkdtemp(self.name)
-  os.chdir(extract_dir)
-  (download_dir, filename) = os.path.split(download_file)
-  auto_extract_bin = os.path.join(extract_dir, filename)
-  shutil.move(download_file, auto_extract_bin)
-  os.chmod(auto_extract_bin, 0777)
-  subprocess.call([auto_extract_bin])
-  self.cleanup_dir_list.append(extract_dir)
+  extract_dir = self.extract(self.download(self.options['url'], self.options.get('md5sum')))
   workdir = guessworkdir(extract_dir)
-  self.copyTree(os.path.join(workdir, "jre1.6.0_27"), "%(location)s")
+  self.copyTree(workdir, "%(location)s")