package com.github.googlei18n.tachyfont;

import java.io.IOException;
import java.util.Enumeration;
import java.util.jar.JarEntry;
import java.util.jar.JarFile;

import javax.servlet.http.*;

@SuppressWarnings("serial")
public class TachyFontServlet extends HttpServlet {
  @Override
  public void doGet(HttpServletRequest req, HttpServletResponse resp) throws IOException {
    resp.setContentType("text/plain");
    String jarFilename = "fonts/noto/sans/NotoSansJP-Thin_subset_smp.TachyFont.jar";
    JarFile jarFile = new JarFile("WEB-INF/" + jarFilename);
    resp.getWriter().println("Jar entries in " + jarFilename + ":");
    Enumeration<JarEntry> enumEntries = jarFile.entries();
    resp.getWriter().println("jar file:");
    while (enumEntries.hasMoreElements()) {
      JarEntry jarEntry = enumEntries.nextElement();
      resp.getWriter().println("  " + jarEntry.getName());
    }   

    JarEntry base = jarFile.getJarEntry("base");
    JarEntry closure_data = jarFile.getJarEntry("closure_data");
    JarEntry closure_idx = jarFile.getJarEntry("closure_idx");
    JarEntry codepoints = jarFile.getJarEntry("codepoints");
    JarEntry gids = jarFile.getJarEntry("gids");
    JarEntry glyph_data = jarFile.getJarEntry("glyph_data");
    JarEntry glyph_table = jarFile.getJarEntry("glyph_table");
    jarFile.close();
  }
}

@@ -59,24 +59,52 @@
 OException;%0A
+import java.io.InputStream;%0A
 import java.
@@ -619,18 +619,13 @@
 Jar 
-entries in
+file:
  %22 +
@@ -640,14 +640,8 @@
 name
- + %22:%22
 );%0A 
@@ -736,16 +736,24 @@
 jar file
+ entries
 :%22);%0A   
@@ -960,24 +960,83 @@
 ry(%22base%22);%0A
+    InputStream baseStream = jarFile.getInputStream(base);%0A
     JarEntry

Access the base file in the JAR.