Java 解析具有多个子块的JTPL块
我正在使用JTPL()解析HTML。当我有一个将被重复解析的块,并且该块中有子块时,输出似乎是以前迭代的刷新数据,除了最后一个子块。我浏览了库的源代码,发现模板的解析方式有一个bug,或者可能是我正在尝试的功能不受支持。有没有遇到过类似的问题并用补丁修复 下面是我的java程序Java 解析具有多个子块的JTPL块,java,Java,我正在使用JTPL()解析HTML。当我有一个将被重复解析的块,并且该块中有子块时,输出似乎是以前迭代的刷新数据,除了最后一个子块。我浏览了库的源代码,发现模板的解析方式有一个bug,或者可能是我正在尝试的功能不受支持。有没有遇到过类似的问题并用补丁修复 下面是我的java程序 import net.sf.jtpl.Template; import java.io.File; import java.io.IOException; import java.io.PrintWriter; im
import net.sf.jtpl.Template;
import java.io.File;
import java.io.IOException;
import java.io.PrintWriter;
import javax.servlet.annotation.WebServlet;
import javax.servlet.http.*;
import javax.servlet.*;
@WebServlet("/sample1")
public class sample1 extends HttpServlet implements SingleThreadModel {
Template tpl;
protected void doGet(HttpServletRequest request,
HttpServletResponse response) throws ServletException, IOException {
PrintWriter out = response.getWriter();
try {
out.print(this.generatePage());
} catch (Exception e) {
e.printStackTrace(out);
}
}
private String generatePage() throws Exception {
tpl = new Template(new File("C:\\Users\\stadikon\\Desktop\\sample1.jtpl"));
tpl.assign("TITLE", "Sample 2");
int line = 10, col = 4, altern = 2, count = 0;
for (int i = 1; i <= line; i++) {
for (int j = 1; j <= col; j++) {
if (count % altern == 0) {
tpl.assign("VARIABLE", "section1");
System.out.println("sample1 - before parsing section1");
tpl.parse("main.line.section1");
} else {
tpl.assign("VARIABLE", "section2");
System.out.println("sample1 - before parsing section2");
tpl.parse("main.line.section2");
}
count++;
}
System.out.println("sample1 - before parsing line");
tpl.parse("main.line");
}
tpl.parse("main");
return (tpl.out());
}
}
预期产量
> >
section1 Section1
section1 Section1
Dividing Line
section2 Section2
section2 Section2
> >
section1 Section1
section1 Section1
Dividing Line
section2 Section2
section2 Section2
> >
section1 Section1
section1 Section1
Dividing Line
section2 Section2
section2 Section2
任何指针都很受欢迎。我通过创建一个单独的模板来解决这个问题,解析它,并将其输出以字符串格式写入原始模板
> >
section1 Section1
section1 Section1
Dividing Line
section2 Section2
section2 Section2
> >
section1 Section1
section1 Section1
section1 Section1
section1 Section1
Dividing Line
section2 Section2
section2 Section2
> >
section1 Section1
section1 Section1
section1 Section1
section1 Section1
section1 Section1
section1 Section1
Dividing Line
section2 Section2
section2 Section2
> >
section1 Section1
section1 Section1
Dividing Line
section2 Section2
section2 Section2
> >
section1 Section1
section1 Section1
Dividing Line
section2 Section2
section2 Section2
> >
section1 Section1
section1 Section1
Dividing Line
section2 Section2
section2 Section2