Mixing Java and PHP with Sugar and WebSphere sMash Joe Lea Product Manager, IBM WebSphere sMash Rob Nicholson Senior Technical Staff Member, IBM WebSphere sMash Majed Itani Software Architect, SugarCRM
Abstract Find out about Sugar's new support for WebSphere sMash - a new, agile development and runtime platform, designed to give developers more speed, simplicity and agility for the creation and deployment of Rich Internet Applications. The combination of a PHP runtime with a strong connection to Java opens up all sorts of exciting possibilities combining the best of the PHP and Java worlds. Learn how to quickly integrate and extend Sugar with sMash's easy-to-use, browser-based tooling and visual assembly-style development, Learn how you can use WebSphere sMash to optimize Sugar including: how to - install Sugar on sMash from the Repository hosted at SugarForge; customize Sugar source code using the browser based IDE we call Application Builder; extend Sugar with our simple browser based flow editor and integrate Sugar using sMash's PHP to Java Bridge.
Agenda SugarCRM and IBM Introducing WebSphere sMash SugarCRM on IBM WebSphere sMash sMash Architecture Why PHP on Java? Demos Sooner or later…. Infrastructure Matters!
SugarForge Project
WebSphere sMash Agile development of dynamic Web 2.0 based applications Introducing WebSphere sMash Improves developer productivity and efficiency through the support of dynamic scripting languages (Groovy and PHP) on Java Leverages Web 2.0 technologies for service invocation, service composition and data interchange  Provides visual tools for developers to build and assemble web2.0 applications
WebSphere sMash Speed Simplicity Agility Dynamic scripting languages Templates & Pre-built services Visual Editors Assemble style development Application “is” the server Clean, short-lived runtime
WebSphere sMash Tooling Dynamic Scripting Editor Visual UI Editor Visual Flow Editor
Project Zero is the development and incubation community for WebSphere sMash Live on the Internet since June 2007 Exposes the IBM development process to the external developer community Project Zero represents The people that build and use WebSphere sMash The incubation of new technology that will deliver in future versions of WebSphere sMash All released versions are called WebSphere sMash www.projectzero.org http://www.projectzero.org Community Development Project Zero: the development community for WebSphere sMash
WebSphere sMash and SugarCRM Magnify the power of Sugar with WebSphere Tools Assets WebSphere sMash Seamlessly leverage Java from PHP Easily connect to Enterprise systems Quickly assemble integrated solutions Integration Deployment Scale up and out with WebSphere
WebSphere sMash PHP Support PHP runtime built in Java. To PHP.net as Jruby is to Ruby and Jython is to Python Same-process interaction between Java and PHP. Calls without IPC – Efficient. Data sharing without copies – Access to sMash Global Context. Mix Java and PHP assets and programmers Best of both worlds. Mix PHP frameworks, applications, extensions with Java libraries. Allow PHP and Java Programmers to collaborate. Benefit from vast investment in Java VM JIT, Garbage Collector, Ongoing investment in Java RAS and tools. Bringing IBM’s best of breed VM technology to bear on PHP. JVM Dynamic languages community. Java world embracing scripting languages such as Jruby, Jython, Groovy, Scala
PHP in WebSphere sMash Java Virtual Machine Runs PHP 5 scripts Requires Java 5 SE or later. Extensibility via XAPI XAPI-C for C extensions from php.net XAPI-J for Java extensions, native libraries invoked over JNI and Project Zero interface Extension language choice opaque to PHP script Java Bridge Debug using via xdebug protocol using Eclipse with PDT P8 Runtime Interpreter/Compiler PHP runtime Java Extensions C Extensions XAPI-J XAPI-C Java- Bridge JAR JAR JAR JAR Groovy runtime WebSphere sMash HTTP server Zero Programming Model xdebug Debug PDT
PHP – Java Interaction PHP Java Bridge allows PHP to: Instantiate Java Classes Call static and instance methods Access static and instance fields Extend Java Classes (not abstract) Implement Java Interfaces. Zero programming model allows PHP to: Interact with other Modules built using Groovy, Java, PHP, Flow by: Handle and fire Zero events Fetch and store to the global context. Use cases. ZSL built “IdeaLab” combining phpBB with sMash security an custom handler in Groovy. ZSL combined PHP with the Java version of Lucene. Interface a PHP application to MQ using JMS. Create complex Excel spreadsheets using Apache POI java libraries.
Jerry’s Keynote Scenario MQ MQ
Let’s Demo
For More Information… Learn how to extend SOA with Web 2.0: ibm.com/soa/soa_and_web_20.html Read about IBM’s view of how Web 2.0 goes to work for business: ibm.com/web20/ Get involved with the WebSphere sMash community: www.projectzero.org

Mixing Java and PHP with Sugar and WebSphere

  • 1.
    Mixing Java andPHP with Sugar and WebSphere sMash Joe Lea Product Manager, IBM WebSphere sMash Rob Nicholson Senior Technical Staff Member, IBM WebSphere sMash Majed Itani Software Architect, SugarCRM
  • 2.
    Abstract Find outabout Sugar's new support for WebSphere sMash - a new, agile development and runtime platform, designed to give developers more speed, simplicity and agility for the creation and deployment of Rich Internet Applications. The combination of a PHP runtime with a strong connection to Java opens up all sorts of exciting possibilities combining the best of the PHP and Java worlds. Learn how to quickly integrate and extend Sugar with sMash's easy-to-use, browser-based tooling and visual assembly-style development, Learn how you can use WebSphere sMash to optimize Sugar including: how to - install Sugar on sMash from the Repository hosted at SugarForge; customize Sugar source code using the browser based IDE we call Application Builder; extend Sugar with our simple browser based flow editor and integrate Sugar using sMash's PHP to Java Bridge.
  • 3.
    Agenda SugarCRM andIBM Introducing WebSphere sMash SugarCRM on IBM WebSphere sMash sMash Architecture Why PHP on Java? Demos Sooner or later…. Infrastructure Matters!
  • 4.
  • 5.
    WebSphere sMash Agiledevelopment of dynamic Web 2.0 based applications Introducing WebSphere sMash Improves developer productivity and efficiency through the support of dynamic scripting languages (Groovy and PHP) on Java Leverages Web 2.0 technologies for service invocation, service composition and data interchange  Provides visual tools for developers to build and assemble web2.0 applications
  • 6.
    WebSphere sMash SpeedSimplicity Agility Dynamic scripting languages Templates & Pre-built services Visual Editors Assemble style development Application “is” the server Clean, short-lived runtime
  • 7.
    WebSphere sMash ToolingDynamic Scripting Editor Visual UI Editor Visual Flow Editor
  • 8.
    Project Zero isthe development and incubation community for WebSphere sMash Live on the Internet since June 2007 Exposes the IBM development process to the external developer community Project Zero represents The people that build and use WebSphere sMash The incubation of new technology that will deliver in future versions of WebSphere sMash All released versions are called WebSphere sMash www.projectzero.org http://www.projectzero.org Community Development Project Zero: the development community for WebSphere sMash
  • 9.
    WebSphere sMash andSugarCRM Magnify the power of Sugar with WebSphere Tools Assets WebSphere sMash Seamlessly leverage Java from PHP Easily connect to Enterprise systems Quickly assemble integrated solutions Integration Deployment Scale up and out with WebSphere
  • 10.
    WebSphere sMash PHPSupport PHP runtime built in Java. To PHP.net as Jruby is to Ruby and Jython is to Python Same-process interaction between Java and PHP. Calls without IPC – Efficient. Data sharing without copies – Access to sMash Global Context. Mix Java and PHP assets and programmers Best of both worlds. Mix PHP frameworks, applications, extensions with Java libraries. Allow PHP and Java Programmers to collaborate. Benefit from vast investment in Java VM JIT, Garbage Collector, Ongoing investment in Java RAS and tools. Bringing IBM’s best of breed VM technology to bear on PHP. JVM Dynamic languages community. Java world embracing scripting languages such as Jruby, Jython, Groovy, Scala
  • 11.
    PHP in WebSpheresMash Java Virtual Machine Runs PHP 5 scripts Requires Java 5 SE or later. Extensibility via XAPI XAPI-C for C extensions from php.net XAPI-J for Java extensions, native libraries invoked over JNI and Project Zero interface Extension language choice opaque to PHP script Java Bridge Debug using via xdebug protocol using Eclipse with PDT P8 Runtime Interpreter/Compiler PHP runtime Java Extensions C Extensions XAPI-J XAPI-C Java- Bridge JAR JAR JAR JAR Groovy runtime WebSphere sMash HTTP server Zero Programming Model xdebug Debug PDT
  • 12.
    PHP – JavaInteraction PHP Java Bridge allows PHP to: Instantiate Java Classes Call static and instance methods Access static and instance fields Extend Java Classes (not abstract) Implement Java Interfaces. Zero programming model allows PHP to: Interact with other Modules built using Groovy, Java, PHP, Flow by: Handle and fire Zero events Fetch and store to the global context. Use cases. ZSL built “IdeaLab” combining phpBB with sMash security an custom handler in Groovy. ZSL combined PHP with the Java version of Lucene. Interface a PHP application to MQ using JMS. Create complex Excel spreadsheets using Apache POI java libraries.
  • 13.
  • 14.
  • 15.
    For More Information… Learn how to extend SOA with Web 2.0: ibm.com/soa/soa_and_web_20.html Read about IBM’s view of how Web 2.0 goes to work for business: ibm.com/web20/ Get involved with the WebSphere sMash community: www.projectzero.org