+ 1Getting Started with WAP and WML Marrying Java & ColdFusion Charles Arehart Founder/CTO, Systemanage ©

Slides:



Advertisements
Similar presentations
Question examples. Session 1 Objectives Why certify? Positioning of the non-technical version What is Java? Key advantages of Java Java Applications vs.
Advertisements

CF and JSP/Servlets Developed originally by Robi Sen For the CF UnderGround II Seminar, Apr 2001 Edited and enhanced by Charlie Arehart (Robi had an emergency.
Using JavaServer Pages Harry R. Erwin, PhD CIT304/CSE301.
DEV392: Extending SharePoint Products And Technologies Through Web Parts And ASP.NET Clint Covington, Program Manager Data And Developer Services - Office.
Server-Side vs. Client-Side Scripting Languages
Object-Oriented Enterprise Application Development Tomcat 3.2 Configuration Last Updated: 03/30/2001.
Week 2 IBS 685. Static Page Architecture The user requests the page by typing a URL in a browser The Browser requests the page from the Web Server The.
1 Build a Web Application on J2EE. 2 J2EE Scenario Client – Web Server – EIS Resources Client – Web Server – EIS Resources Client – Application Server.
DT228/3 Web Development JSP: Directives and Scripting elements.
J2EE Java 2 Enterprise Edition. Relevant Topics in The Java Tutorial Topic Web Page JDBC orial/jdbc
Java Server Team 8. Overview What is a Java Server? History Architecture Advantages Disadvantages Current Technologies Conclusion.
1 Java Server Pages Can web pages be created specially for each user? What part does Java play?
M.Sc. Course, Dept. of Informatics and Telecommunications, University of Athens S.Hadjiefthymiades “Web Application Servers” Basics on WAS WAS are necessary.
Web Applications Basics. Introduction to Web Web features Clent/Server HTTP HyperText Markup Language URL addresses Web server - a computer program that.
CS 160: Software Engineering August 27 Class Meeting Department of Computer Science San Jose State University Fall 2014 Instructor: Ron Mak
Quick Tour of the Web Technologies: The BIG picture LECTURE A bird’s eye view of the different web technologies that we shall explore and study.
Understanding and Managing WebSphere V5
Tomcat Celsina Bignoli History of Tomcat Tomcat is the result of the integration of two groups of developers. – JServ, an open source.
SQL Server Reporting Services
Struts 2.0 an Overview ( )
UNIT-V The MVC architecture and Struts Framework.
>> Going From CF to Java (moving between the two) Charles Arehart Founder/CTO, Systemanage © 2001 Charles.
J2EE Web Fundamentals Lesson 1 Introduction and Overview
Chapter 10 EJB Concepts of EJB Three Components in Creating an EJB Starting/Stopping J2EE Server and Deployment Tool Installation and Configuration of.
M. Taimoor Khan * Java Server Pages (JSP) is a server-side programming technology that enables the creation of dynamic,
Applets & Servlets.
FALL 2005CSI 4118 – UNIVERSITY OF OTTAWA1 Part 4 Web technologies: HTTP, CGI, PHP,Java applets)
Server-Side Source Control It really can work! Charlie Arehart SysteManage
Servlets Environment Setup. Agenda:  Setting up Java Development Kit  Setting up Web Server: Tomcat  Setting up CLASSPATH.
CIS 285 ROBINSON WINTER 2005 CIS 285 Web Application Development with Java CIS 285 Sinclair Community College Instructor: Mary Robinson.
1 CHAPTER 1 OVERVIEW of JDEVELOPER. 2 Overview of JDeveloper Oracle’s JDeveloper 10g (JDeveloper) is an integrated development environment for Java programming.
Introduction to ColdFusion Penn State Web 2001 Conference Brian Panulla Elmwood Media Group, LLC.
Oracle Application Express 3.0 Joel R. Kallman Software Development Manager.
Presentation: SOAP in a distributed object framework, Application Servers & AXIS SOAP.
COLD FUSION Deepak Sethi. What is it…. Cold fusion is a complete web application server mainly used for developing e-business applications. It allows.
|Tecnologie Web L-A Anno Accademico Laboratorio di Tecnologie Web Introduzione ad Eclipse e Tomcat
J2EE Structure & Definitions Catie Welsh CSE 432
20-753: Fundamentals of Web Programming 1 Lecture 1: Introduction Fundamentals of Web Programming Lecture 1: Introduction.
Database-Driven Web Sites, Second Edition1 Chapter 5 WEB SERVERS.
Introduction to ColdFusion Yu Fu 2003 MEC Candidate.
National Center for Supercomputing Applications NCSA OPIE Presentation November 2000.
Presentation: SOAP/WS in a distributed object framework, Application Servers & AXIS SOAP.
Source: Peter Eeles, Kelli Houston, and Wojtek Kozaczynsky, Building J2EE Applicationa with the Rational Unified Process, Addison Wesley, 2003 Prepared.
Peter Laird. | 1 Building Dynamic Google Gadgets in Java Peter Laird Managing Architect WebLogic Portal BEA Systems.
What’s New from Macromedia Simon Horwith CTO Etrilogy, Ltd.
1 Geospatial and Business Intelligence Jean-Sébastien Turcotte Executive VP San Francisco - April 2007 Streamlining web mapping applications.
Presentation: SOAP/WS in a distributed object framework, Application Servers & AXIS SOAP.
MC365 Application Servers, Servlets, and Java Server Pages (JSP’s): Tomcat.
CF101: Welcome to ColdFusion Simon Horwith CTO, Etrilogy Ltd.
Charlie Arehart, CTO BlueDragon A New Platform for Fusebox 4.
IBM Lotus Software © 2006 IBM Corporation IBM Lotus Notes Domino Blog Template Steve Castledine.
CS562 Advanced Java and Internet Application Introduction to the Computer Warehouse Web Application. Java Server Pages (JSP) Technology. By Team Alpha.
© FPT SOFTWARE – TRAINING MATERIAL – Internal use 04e-BM/NS/HDCV/FSOFT v2/3 JSP Application Models.
Web Services Using Visual.NET By Kevin Tse. Agenda What are Web Services and Why are they Useful ? SOAP vs CORBA Goals of the Web Service Project Proposed.
UNDERSTANDING YOUR OPTIONS FOR CLIENT-SIDE DEVELOPMENT IN OFFICE 365 Mark Rackley
® IBM Software Group © 2003 IBM Corporation IBM WebSphere Studio V5.1.2: Making Java Development Easier May 2004.
10 Copyright © 2004, Oracle. All rights reserved. Building ADF View Components.
Glink for Java: applet, application and an API for integrating access to Bull, IBM, UNIX and Minitel systems with your Java based e-business applications.
V7 Foundation Series Vignette Education Services.
Java Application Development Services on Different Platforms.
BlueDragon Editions and Advantages Lori Pacheco New Atlanta.
Lecture Transforming Data: Using Apache Xalan to apply XSLT transformations Marc Dumontier Blueprint Initiative Samuel Lunenfeld Research Institute.
Java Server Pages Can web pages be created specially for each user?
WebSphere Diego Leone.
Outline SOAP and Web Services in relation to Distributed Objects
Outline SOAP and Web Services in relation to Distributed Objects
Nate Nelson I*LEVEL, Inc.
ESIS Consulting LLC (C) ESIS Consulting LLC. All rights reserved
Intergral Team at CFUnited
Presentation transcript:

+ 1Getting Started with WAP and WML Marrying Java & ColdFusion Charles Arehart Founder/CTO, Systemanage © 2001 Charles Arehart,

Getting Started with WAP and WML2 Agenda Considering Java as an alternative Integrating CF and Java Today –CFOBJECT, CFX_ Custom tags, CFServlet Jrun and Java Application Servers –JSP/Servlets, EJBs, and more Future integration possibilities for CF’ers TagServlet from n-ary.com Software Needed Learning More

Getting Started with WAP and WML3 Audience Intended primarily for those with: –ColdFusion experience –Aware of Java and its value to application developers No need for java experience Enterprise integration experience not necessary Anyone interested in: –Learning about Java integrating ColdFusion & Java –Extending CF into existing enterprise applications –Will likely come away capable of doing it immediately

Getting Started with WAP and WML4 Who Am I? A programmer by trade, trainer at heart –with nearly 20 years IT experience 4 years ColdFusion, 1 year server-side Java –Monthly contributor to ColdFusion Developer Journal –Speaker at user groups, conferences worldwide –Allaire Certified Instructor & Developer Best practices, performance tuning consultant –Contract mentor to development teams

Getting Started with WAP and WML5 Our Goal Java integration is both simple and broad –Can’t expect to cover everything today (or even an entire week) Not even a single book can capture it all –Will introduce most important topics Get a flavor for opportunities, challenges Understand fundamentals –Will discuss How to begin Explore resources for learning more

Getting Started with WAP and WML6 Considering Java as an alternative Java: it’s here & it’s big May have been feeling pull –May have been able to “fight” getting into it –Time has come to face the truth A large market is demanding Enterprise java solutions Not really about caving in –Learning how and when to best leverage Java as a CF developer –Not necessarily leaving CF for Java –More about how to best marry the two Getting easier all the time Free to get started –Most platform tools are free, for developer level deployment

Getting Started with WAP and WML7 Why Bother? Benefits for current projects –Leveraging java library functions for quick needs –Creating new classes to extend functionality –Accessing existing apps/modules within enterprise Whether written in java (as classes, EJB’s, servlets) Or made available by way of it (CORBA) Benefits as a professional developer or development firm –Lots more clients clamoring for JSP/servlets than CF Still plenty of market for CF, just larger for JSP/servlets –Skills learned in working with Jrun migrate for the most part to other java application servers IBM Websphere, BEA WebLogic, Apache TomCat

Getting Started with WAP and WML8 What Can Java Give Us? Among the things Java can offer CF developers, besides primarily Enterprise integration include: –Stronger string manipulation –XML manipulation –Networking –Compression –Encryption –Graphics generation –Image creation and manipulation –PDF creation and formatting Allaire Tag Gallery and Sun site offer downloadable examples of such things

Getting Started with WAP and WML9 Integrating CF and Java Today CFOBJECT for Java –Used to call upon java classes available on the same server running CF Can be used to leverage java language Or to access existing business objects, including EJB’s CFX_ Java Custom tags –Similar to calling via CFOBJECT Typically used to leverage CF integration within the Java class (accessing/updating CF variables, queries, etc.) –Like CFX’s in C++, can leverage the CFX API CFServlet –Used to integrate with servlets Either obtaining the output of the servlet Or creating means to pass data to servlet which it can manipulate

Getting Started with WAP and WML10 Simpler Forms of Integration Keep in mind that servlets (and JSPs) can also be called from within CF templates just as regular HTML pages could: – –Etc.

Getting Started with WAP and WML11 Installation Support for Java Integration To leverage CFOBJECT for Java and CFX –you must have of ColdFusion –Must have Java Runtime Environment 1.2 –Must configure CF server Admin to setup classpath and other parameters Critical points are –JVM path: where JVM is installed –Classpath: where your classes will be stored –CFX_jar path: where cfx.jar for CFX’s will be stored See “A Cold Cup O’ Joe” Part 1 –Jan 01 CFDJ –Great discussion of setup issues, challenges See later slide “Software Needed” for how to obtain software, versions, etc.

Getting Started with WAP and WML12 CFOBJECT for Java New support in 4.5 for CFOBJECT Type=“Java” –Also createobject() function for use in CFSCRIPT Allows call to java objects –There are even graphing objects that can be called Fairly easy to demonstrate simple example –Just need to know its methods and attributes

Getting Started with WAP and WML13 CFObject (cont) For more complex uses –Need to understand calling an object’s default constructor or overloaded constructors Does not currently support overload by attribute datatype –Great discussion in “Cold Cup O’ Joe” Part 3 April 01 CFDJ Can also be used to call Enterprise Java Beans –Demonstrated in Allaire “Developing Applications with Jrun”, chapter 42

Getting Started with WAP and WML14 CFX_ Java Custom Tags Similar to calling upon objects –The class that is called can read/manipulate CF elements Variables, queries See simple example –Can also pass it attributes Processed with request.getAttribute in class See simple example Must be registered in the CF administrator –Then called as Available Debugging option –See simple example May hear of old way of doing this, CFX_J

Getting Started with WAP and WML15 Java CFX Interface Several available methods, attributes for developing java Custom Tags –Query interface –Request Interface –Response Interface See “Developing Web Apps” for details –Chapter 18

Getting Started with WAP and WML16 CFServlet Only works with Jrun Allows call to servlet running under Jrun –Need only know Server’s IP address, if not same as CF server Jrun Port (Jrun and other app servers use unique ports to distinguish from web server) Servlet name – Optional WriteOutput=“yes/no” attribute –If no, output of servlet is written to CF output stream –If yes, written to Cfservlet.output variable Optional Debug=“yes/no” attribute –Can write to a Jrun-specific event log file May hear of old way of doing this: CF_Servlet

Getting Started with WAP and WML17 CFServlet Allows passing data by value or reference –By value: Available to servlet as “parameter” Changing parameter in servlet has no effect on CF variable –By reference: Optional “type” attribute to help CF tell java the datatype Available to servlet as “attribute” Changing attribute value in servlet will change CF variable

Getting Started with WAP and WML18 Message Passing When considering communications between CF and java components, consider XML –XML provides powerful means to pass structured data between disparate systems –Need not be Allaire’s WDDX format If you control the two systems talking to each other, you can create your own meaning in the XML –See “Online Ticket Store” in Jan 2000 CFDJ

Getting Started with WAP and WML19 Jrun and Java Application Servers Jrun is a Java Application Server –And a very well respected one, at that –Reasonably priced, free developer edition Others include –IBM Websphere –BEA Weblogic –Apache TomCat Enables execution of Java Server Pages, servlets –JRUN also includes features to run EJBs, and more JSP’s ease entry into Java world

Getting Started with WAP and WML20 Java Editors Big difference between JSP editor and Java Servlet/Class editor –CF Studio can act as JSP editor Knows about JSP tags, etc. –Kawa is a real Java editor Can compile things, debug, etc. –Jrun Studio is a hybrid Adds ability to compile to CF Studio interface Not nearly as powerful as Kawa for real Java editing –Other java editors don’t likely support JSP’s/servlets Visual café, Visual J++, etc. JPadPro available as shareware

Getting Started with WAP and WML21 Future integration possibilities for CF’ers ColdFusion 6, a.k.a Neo –Changing CF from running on a C++ platform to running on a Java platform –Does NOT propose to change CF developers into Java developers CF templates will run unchanged Under the cover, will be turned into Java Servlets –Will further open integration possibilities –More important for Allaire Allows them to leverage the Java platform –And many features that they currently must build from scratch to make CF as powerful as it is

Getting Started with WAP and WML22 TagServlet from n-ary.com Very similar to proposed Neo approach –But works today Can process a ColdFusion file and turn it into a servlet to be executed –Has more limited tag support than Neo proposes Is improving all the time Currently in beta, will eventually be sold Called TagFusion for a time

Getting Started with WAP and WML23 Getting to EJB’s By now can see at least 2 routes to EJB’s –CFOBJECT direct call to EJB –CFSERVLET call to servlet, that calls EJB In case such interaction already exists and don’t want to code more direct route

Getting Started with WAP and WML24 Software Needed To do any java integration, need Java Runtime Engine on server –Can obtain free from javasoft.com To run Jrun or do JSP/servlet integration, will need a Java application server –Allaire offers free 3 person developer edition –Will need Java 2 EE (J2EE) SDK on top of that Also free from javasoft.com –Other java app servers from IBM, BEA (beasys.com), Apache Tomcat (apache.org) To do EJB integration, need EJB server –Jrun provides that, as do other products ColdFusion 4.5 –added java custom tags and CFObject support for java

Getting Started with WAP and WML25 Learning More Many CFDJ articles –Especially current 8 part “Cold Cup O’ Joe” series by Guy Risch –3 part “Java for CF’ers” series by Ben Forta –6 part “Online Ticket Store” series by Ajit Sagar 4 parts of which were in Java Dev. Journal Allaire documentation –CFObject, CFX_ custom tags, CFServlet –Language Reference and “Developing Web Apps” –Administering CF (for admin setup) Excellent Allaire Jrun documentation –Download the Allaire Jrun 3-user demo –No time expiration

Getting Started with WAP and WML26 Beware of Some Books May focus on teaching servlets/JSP to java developers –Focus more on showing them how to do web application development (stateless programming, passing data from URL’s and forms, etc.) –Presume that reader already knows Java Java Books often focus too much on client- side Java (applets, Swing) –Not as relevant to us interested in server-side java

Getting Started with WAP and WML27 For Further Questions For follow-up questions –Or more information on Java or ColdFusion consulting, training, or presentations Please contact: Charlie Arehart, CTO, Systemanage (voice) Available for training, mentoring, short-term consulting (1-5 days): –All manner of CF topics, beginner-adv –Maximizing developer productivity –Best practices, performance tuning –Database design, Int/Adv SQL topics –Testing, Source Code Control, and more –Wireless development training