|
ABSTRACT
We incorporate innovations from the <bigwig> project into the Java language to provide high-level features for Web service programming. The resulting language, JWIG, contains an advanced session model and a flexible mechanism for dynamic construction of XML documents, in particular XHTML. To support program development we provide a suite of program analyses that at compile time verify for a given program that no runtime errors can occur while building documents or receiving form input, and that all documents being shown are valid according to the document type definition for XHTML 1.0.We compare JWIG with Servlets and JSP which are widely used Web service development platforms. Our implementation and evaluation of JWIG indicate that the language extensions can simplify the program structure and that the analyses are sufficiently fast and precise to be practically useful.
REFERENCES
Note: OCR errors may be found in this Reference List extracted from the full text article. ACM has opted to expose the complete List rather than only correct and linked references.
| |
1
|
Alfred V. Aho , Ravi Sethi , Jeffrey D. Ullman, Compilers: principles, techniques, and tools, Addison-Wesley Longman Publishing Co., Inc., Boston, MA, 1986
|
| |
2
|
Appeal Virtual Machines. 2002. JRockit---the faster server JVM. http://www.jrockit.com/.
|
| |
3
|
|
| |
4
|
Behlendorf, B. et al. 2002. The Apache HTTP server project. http://httpd.apache.org/.
|
| |
5
|
Box, D. et al. 2000. Simple object access protocol (SOAP) 1.1. W3C Note. http://www.w3.org/TR/SOAP/.
|
| |
6
|
Boyer, L., Danielsen, P., Ferrans, J., Karam, G., Ladd, D., Lucas, B., and Rehor, K. 2000. Voice eXtensible Markup Language, Version 1.0. W3C. W3C Note. http://www.w3.org/TR/voicexml/.
|
| |
7
|
Brabrand, C. 2000. <bigwig> Version 1.3---Reference Manual. Notes Series NS-00-4. BRICS, Department of Computer Science, University of Aarhus, Aarhus, Denmark.
|
| |
8
|
|
| |
9
|
|
 |
10
|
|
 |
11
|
|
| |
12
|
Brabrand, C., Schwartzbach, M. I., and Vanggaar, M. 2003. The metafront system: Extensible parsing and transformation. In Proceedings of the 3rd ACM SIGPLAN Workshop on Language Descriptions, Tools and Applications (LDTA' 03).
|
| |
13
|
Bray, T., Hollander, D., and Layman, A. 1999. Namespaces in XML. W3C Recommendation. http://www.w3.org/TR/REC-xml-names/.
|
| |
14
|
Bray, T., Paoli, J., Sperberg-McQueen, C. M., and Maler, E. 2000. Extensible Markup Language (XML) 1.0 (2nd ed.). W3C Recommendation. http://www.w3.org/TR/REC-xml.
|
 |
15
|
|
| |
16
|
Christensen, A. S. and Møller, A. 2002. JWIG User Manual. BRICS, Department of Computer Science, University of Aarhus, Aarhus, Denmark. Available from http://www. jwig.org/manual/.
|
| |
17
|
Christensen, A. S., Møller, A., and Schwartzbach, M. I. 2002. Static analysis for dynamic XML. Tech. rep. RS-02-24, BRICS, Department of Computer Science, University of Aarhus, Aarhus, Denmark. Presented at Programming Language Technologies for XML, PLAN-X, October 2002.
|
| |
18
|
Christensen, A. S., Møller, A., and Schwartzbach, M. I. 2003. Prcise analysis of string expressions. In Proceedings of the 10th International Static Analysis Symposium (SAS'03). Lecture Notes in Computer Science, vol. 2694. Springer-Verlag, Berlin, Germany.
|
| |
19
|
Christensen, E., Curbera, F., Meredith, G., and Weerawarana, S. 2001. Web services description language (WSDL) 1.1. W3C Note. http://www.w3.org/TR/wsdl.
|
| |
20
|
|
| |
21
|
Exolab Group. 2002. Castor. http://castor.exolab.org/.
|
 |
22
|
Mary Fernández , Dan Suciu , Igor Tatarinov, Declarative specification of data-intensive Web sites, Proceedings of the 2nd conference on Domain-specific languages, p.135-148, October 03-06, 1999, Austin, Texas, United States
|
| |
23
|
|
| |
24
|
John E. Hopcroft , Rajeev Motwani , Rotwani , Jeffrey D. Ullman, Introduction to Automata Theory, Languages and Computability, Addison-Wesley Longman Publishing Co., Inc., Boston, MA, 2000
|
| |
25
|
|
| |
26
|
Hunter, J. and McLaughlin, B. 2001. JDOM. http://jdom.org/.
|
| |
27
|
Kam, J. B. and Ullman, J. D. 1977. Monotone data flow analysis frameworks. Acta Informatica 7, 305--317.
|
| |
28
|
Klarlund, N., Møller, A., and Schwartzbach, M. I. 2000. Document Structure Description 1.0. Notes Series NS-00-7. BRICS, Department of Computer Science, University of Aarhus. Available from http://www.brics.dk/DSD/.
|
| |
29
|
|
| |
30
|
Klein, G. 2001. JFlex---the fast scanner generator for Java. http://www.jflex.de/.
|
| |
31
|
Ladd, D. A. and Ramming, J. C. 1996. Programming the Web: An application-oriented language for hypermedia services. World Wide Web J. 1, 1 (Jan.). Also in Proceedings of the 4th International World Wide Web Conference (WWW4).
|
| |
32
|
McClanahan, C. R. et al. 2002. Struts. http://jakarta.apache.org/struts/.
|
| |
33
|
Mohri, M. and Nederhof, M.-J. 2001. Robustness in Language and Speech Technology. Kluwer Academic Publishers, Dordrecht, The Netherlands. See Chap. 9: "Regular Approximation of Context-Free Grammars through Transformation."
|
| |
34
|
Møller, A. 2001a. The <bigwig> runtime system. http://www.brics.dk/bigwig/runwig/.
|
| |
35
|
Møller, A. 2001b. dk.brics.automaton---finite-state automata and regular expressions for Java. http://www.brics.dk/automaton/.
|
| |
36
|
Møller, A. 2002. Document Structure Description 2.0. BRICS, Department of Computer Science, University of Aarhus, Aarhus, Denmark. Available from http://www.brics.dk/DSD/.
|
| |
37
|
Netscape. 1999. Server-side JavaScript. http://developer.netscape.com/docs/manuals/ssjs.html.
|
| |
38
|
|
| |
39
|
Oskoboiny, G. 2001. HTML Validation Service. http://validator.w3.org/.
|
| |
40
|
Pemberton, S. et al. 2000. XHTML 1.0: The extensible hypertext markup language. W3C Recommendation. http://www.w3.org/TR/xhtml1.
|
| |
41
|
Raggett, D., Hors, A. L., and Jacobs, I. 1999. HTML 4.01 specification. W3C Recommendation. http://www.w3.org/TR/html4/.
|
| |
42
|
Reps, T. 1998. Program analysis via graph reachability. Inform. Softw. Techn. 40, 11--12 (Nov./Dec.), 701--726.
|
 |
43
|
|
| |
44
|
Sun Microsystems. 2001a. Java Servlet Specification, Version 2.3. Available from http://java. sun.com/products/servlet/.
|
| |
45
|
Sun Microsystems. 2001b. JavaServer Pages Specification, Version 1.2. Available from http:// java.sun.com/products/jsp/.
|
| |
46
|
Sun Microsystems. 2002. JAXB. http://java.sun.com/xml/jaxb/.
|
 |
47
|
Vijay Sundaresan , Laurie Hendren , Chrislain Razafimahefa , Raja Vallée-Rai , Patrick Lam , Etienne Gagnon , Charles Godin, Practical virtual method call resolution for Java, Proceedings of the 15th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, p.264-280, October 2000, Minneapolis, Minnesota, United States
|
| |
48
|
Thompson, H. S., Beech, D., Maloney, M., and Mendelsohn, N. 2001. XML Schema part 1: Structures. W3C Recommendation. http://www.w3.org/TR/xmlschema-1/.
|
| |
49
|
Raja Vallée-Rai , Phong Co , Etienne Gagnon , Laurie Hendren , Patrick Lam , Vijay Sundaresan, Soot - a Java bytecode optimization framework, Proceedings of the 1999 conference of the Centre for Advanced Studies on Collaborative research, p.13, November 08-11, 1999, Mississauga, Ontario, Canada
|
| |
50
|
WAP Forum. 2001. Wireless Markup Language, Version 2.0. Wireless Application Protocol Forum. http://www.wapforum.org/.
|
CITED BY 28
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Matthew Harren , Mukund Raghavachari , Oded Shmueli , Michael G. Burke , Rajesh Bordawekar , Igor Pechtchanski , Vivek Sarkar, XJ: facilitating XML processing in Java, Proceedings of the 14th international conference on World Wide Web, May 10-14, 2005, Chiba, Japan
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Shriram Krishnamurthi , Peter Walton Hopkins , Jay Mccarthy , Paul T. Graunke , Greg Pettyjohn , Matthias Felleisen, Implementation and use of the PLT scheme Web server, Higher-Order and Symbolic Computation, v.20 n.4, p.431-460, December 2007
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Takao Shimomura , Kenji Ikeda , Quan Liang Chen , Nhor Sok Lang , Muneo Takahashi, Visual programming for web applications that use HTML frame facilities, Proceedings of the 2007 annual Conference on International Conference on Computer Engineering and Applications, p.384-389, January 17-19, 2007, Gold Coast, Queensland, Australia
|
|
|
Takao Shimomura , Kenji Ikeda , Quan Liang Chen , Nhor Sok Lang , Muneo Takahashi, Customizable verifiers for web applications and their implementation, Proceedings of the 2007 annual Conference on International Conference on Computer Engineering and Applications, p.396-401, January 17-19, 2007, Gold Coast, Queensland, Australia
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
Sven Groppe , Jana Neumann , Volker Linnemann, SWOBE - embedding the semantic web languages RDF, SPARQL and SPARUL into java for guaranteeing type safety, for checking the satisfiability of queries and for the determination of query result types, Proceedings of the 2009 ACM symposium on Applied Computing, March 08-12, 2009, Honolulu, Hawaii
|
|