• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Developing Applications with VMforce
 

Developing Applications with VMforce

on

  • 2,497 views

VMforce gives Java developers a direct path to the cloud. This session will include technical discussions and feature a demo using Spring Roo and Force.com services to quickly create a Java ...

VMforce gives Java developers a direct path to the cloud. This session will include technical discussions and feature a demo using Spring Roo and Force.com services to quickly create a Java application and deploy it to the cloud.

Statistics

Views

Total Views
2,497
Views on SlideShare
2,466
Embed Views
31

Actions

Likes
3
Downloads
97
Comments
0

1 Embed 31

http://developer.force.com 31

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • Show how quick and easy it is to build and deploy – had to stretch out the content because it is so quick to build and dev.
  • Conceptually Introduce relationship betw VMF PaaS and DB.com; highlight benefits of each/bothWe take care of running everything (we manage how it runs)Pre-integrated to all these cloud services
  • Conceptually Introduce relationship betw VMF PaaS and DB.com; highlight benefits of each/bothWe take care of running everything (we manage how it runs)Pre-integrated to all these cloud services
  • Vmforce works by providing a multi-tenant jvm cloud that Spring developers can deploy their apps to. Once deployed the Java apps will be able to access services on the force.com platform including search, reporting and the force.com database for persistance. In the reverse, and this is what is more important for force.com developers to understand is that they can leverage existing apps, routines, logic and developer skillsets.Now lets jump into force.com for the cloud
  • JPA and Hibernate are not mutually exclusive. Hibernate is itself a JPA provider. But Hibernate only works with JDBC drivers. VMforce uses DataNucleus as a JPA provider because DataNucleus' SPI (plugin points) is a better fit for the Force.com database than JDBC.
  • More details in stagingRabitmqRoutingAdoption: Force.com -> Java, open source techs
  • Talk about Sandbox
  • oauth2
  • Tie into CRM activities, reporting, campaigns, contact management etc. – don’t reinvent the wheel.

Developing Applications with VMforce Developing Applications with VMforce Presentation Transcript

  • App Development with VMforce
    Developers
    Quinton Wall: salesforce.com
    RamnivasLaddad: VMware
  • Safe Harbor
    Safe harbor statement under the Private Securities Litigation Reform Act of 1995: This presentation may contain forward-looking statements that involve risks, uncertainties, and assumptions. If any such uncertainties materialize or if any of the assumptions proves incorrect, the results of salesforce.com, inc. could differ materially from the results expressed or implied by the forward-looking statements we make. All statements other than statements of historical fact could be deemed forward-looking, including any projections of subscriber growth, earnings, revenues, or other financial items and any statements regarding strategies or plans of management for future operations, statements of belief, any statements concerning new, planned, or upgraded services or technology developments and customer contracts or use of our services.
    The risks and uncertainties referred to above include – but are not limited to – risks associated with developing and delivering new functionality for our service, our new business model, our past operating losses, possible fluctuations in our operating results and rate of growth, interruptions or delays in our Web hosting, breach of our security measures, the outcome of intellectual property and other litigation, risks associated with possible mergers and acquisitions, the immature market in which we operate, our relatively limited operating history, our ability to expand, retain, and motivate our employees and manage our growth, new releases of our service and successful customer deployment, our limited history reselling non-salesforce.com products, and utilization and selling to larger enterprise customers. Further information on potential factors that could affect the financial results of salesforce.com, inc. is included in our annual report on Form 10-K for the most recent fiscal year ended January 31, 2010. This documents and others are available on the SEC Filings section of the Investor Information section of our Web site.
    Any unreleased services or features referenced in this or other press releases or public statements are not currently available and may not be delivered on time or at all. Customers who purchase our services should make the purchase decisions based upon features that are currently available. Salesforce.com, inc. assumes no obligation and does not intend to update these forward-looking statements.
  • @ramnivas
    Spring framework committer
    Main interests – Aspect-oriented programming
    Lightweight enterprise Java
    Cloud computing
    Author of books and articles – AspectJ in Action (1st and 2nd edition)
    Speaker at many professional conferences
    JavaOne, JavaPolis, SpringOne, Software Development, No Fluff Just Stuff, EclipseCon, O’Reilly OSCON etc.
    Active involvement in AspectJ since its early form
    RL
  • @quintonwall
    • Force.com Developer Evangelist
    • Toolkit Manager for Developer.force.com
    • Apple IOS
    • Android
    • Facebook
    • Google etc..
    • Founding member of Australian Java Users Group (1995!)
    • Regular Speaker at many professional conferences
    • JavaOne, SpringOne, Dreamforce, Paypal X etc.
    • Fiction author in my copious spare time.
    • YACA
    • Yet Another Crazy Aussie
    QW
  • What is this session about?
    The Current State of Software Development
    Identify ‘typical’ VMforce Use Cases
    Gets hands on with VMforce
    What’s next for VMforce
    RL
    5
  • State of Software Development
    Technologies“Я” Us
    Batch Job
    AJAX
    JAXB
    TopLink
    EJB
    JSF
    CORBA
    RMI
    Hibernate
    JavaSpaces
    Servlet
    OSGi
    ESB
    Clustering
    JSF
    Security
    Quartz
    JDBC
    JMX
    JTA
    Mail
    Struts
    JMS
    SOAP
    Reporting
    Testing
    JPA
    Web Services
    Caching
    Scripting
    LDAP
    RL
  • Traditional Software Development
    Complexity is increasing at rapid pace
    More functionality
    Complex integration
    Higher stake in quality
    Confusing technology landscape
    Coping with complexity a challenge
    RL
  • Inherent vs. Apparent Complexity
    What can we do about this?
    Apparent
    complexity
    Inherent
    complexity
    Implementation
    Implementation overhead
    Functional logic
    RL
  • Many facets of complexity
    Development complexity
    Isolating stable business logic from fast-shifting technology choices
    Creating high quality systems
    Responding to changing business needs
    Deployment and operations complexity
    Choosing the right hardware, operating system, web/application server
    Monitoring applications
    Responding to scalability needs
    Dealing with hardware- and system-level failures
    Upgrading without substantial down time
    Spring
    VMforce
    RL
    15
  • Want Proof?Demo: Spring Roo & VMforce
  • What did we just do?
  • What is VMforce?
    Develop your Java app locally
    Eclipse
    Spring FrameworkJPA
    Your Java apps can leverage Force.com services
    Relational cloud database
    Security & user management
    Search & Chatter APIs
    Reporting
    We run it for you in our cloud
    Managed Java Stack
    Automatic Scalability
    Backups and DR
    Pre-integrated to Force.com database
  • Why VMforce?
    Develop your Java app locally
    Leverage existing Java skills and assets
    Your Java apps can leverage Force.com services
    Centralize data management
    Centralize user managementFaster time-to-value
    We run it for you in our cloud
    No complex HW and SW stacks to build, tune, scale, patch and upgrade
    Trusted performance, reliability, backup, and disaster recovery
  • Enterprise Java Developers Don’t Have a Path to the Cloud
    ?
    6 Million Java Developers
  • VMforce brings the cloud to Java Developers
    ?
    6 Million Java Developers
    QW
    20
  • How VMforce works
    Your app gets search, reporting, mobile and all other Force.com services out of the box
    You deploy a Java Web App
    Force.com
    VMforce Multi-tenant JVM Cloud
    JVM
    Servlet Engine
    .war
    API
    It gets its own servlet engine and JVM
    Force.com provides the database for your Java app
    It connects to Force.com using existing APIs with JPA layer
  • Why JPA?
    Standard way to access relational data
    Many implementations
    Hibernate, EclipseLink, OpenJPA, DataNucleus
    Favored approach even with non-relational databases
    Google App Engine (Big Table)
    SimpleJPA (Amazon SimpleDB)
    Works well with tools such as Spring Roo
    Hibernate only works with JDBC drivers.
    DataNucleus’s SPI is a better fit for Force.com DB
  • VMForce – Building Blocks
    TODO: update graphics
    Developers
    Applications
    IDE
    Portal
    CLI
    User authentication
    SFDC Services
    Routing and load balancing
    Cloud Controller
    Spring tc Server
    Monitoring
    vSphere
    VMWARE
    Physical Infrastructure Layer
    SFDC
  • D
    A
    B
    C
    VMforce 101: The ‘typical’ 10,000 foot view
    Services
    VMforce Multi-tenant JVM
    User Administration
    Web Services API
    Force.com ‘Org’
    Workflow & Approvals
    Forms & Page Layout Editor
    Reporting & Analytics
    Multi-Device
    Multiple Spring Apps, Java Libraries etc..
    Search
    Security
    Database
    Each Org has its own instance
  • 10,000 foot view – App Dev Lifecycle
    Local Environment
    Force.com Sandbox
    Build, Deploy, Test Locally
    Use Force.com DB & Services
    dev
    VMforce Cloud
    Deploy to the Cloud
    test
    Force.com Production
    Multiple Web Apps pointing to different Force.com Orgs
  • Typical VMforce Use Cases
  • Integration apps
    Force.com
    Java App
    On Premise
    VMforceApp app =
    new VMforceApp();
    Policies__c[] result =
    app.getPolicies(customerId);
    public SObject[] getPolicies(String id) {
    return convert2SObject(
    soap.getPolicies(id));
    }
    Delegate complex integration logic to Java tier
    Reuse existing Java assets (e.g. mapping, parsing logic)
    Delegate work to Java skilled people
  • Data processing apps
    Force.com
    VMforce App
    public SObject[] process(SObject[] input) {
    return myMagician.performMagic(input);
    }
    VMforceApp app = new VMforceApp();
    SObject[] result = app.process(sobjects);
    sync
    VMforceApp app = new VMforceApp();
    app.process(sobjects,callback);
    public void callback(SObject[] result) {
    checkResults(result);
    }
    async
    Delegate heavy-weight processing to Java tier
    Reuse existing Java assets, libraries etc
    Delegate dev work to Java skilled people
  • Authenticate with Salesforce Login
    Unauthenticated request
    Redirect for authentication
    Logged in as Scott
    to VMforce App
    Access Force.com data as Scott
    Force.com
  • Hybrid Apps. Leverage Force.com Services
    Public
    Private
    Single Data Source
    Force.com DB
    QW
  • Real World Example: E-Commerce before VMforce
    Decrypt HMAC-SHA
    (Not supported in Apex)
    CloudConversion native App
    Respond with specific SOAP Message
    (Not supported in Sites)
    Subscription & Billing Services
  • Real World Example: E-Commerce with VMforce
  • Summary
    VMforce brings the cloud to Java Developers
    Code the way you know, and you want!
    Simplified Development
    Spring: Java Dev
    Force.com: DB & Services in the Cloud
    VMforce: Cloud Deployment
    VMforce Use Cases
    Force.com Databases & Services
  • Where to get more info
    Vmforce Lab!
    Magnolia C (get hands on, and free stuff!)
    VMforce Developer Home Page
    http://developer.force.com/vmforce
    VMforce FAQ
    http://wiki.developerforce.com/index.php/Tech_talk:_VMforce_techtalk_FAQ
    Vmforce Webinar Series
    http://wiki.developerforce.com/index.php/VMforce_Spring_for_Force.com_Developers?d=70130000000FK2U
    qwall2@salesforce.com
  • App Development with VMforce
  • Visit the Developer Training and Support Booth in Force.com Zone
    D I S C O V E R
    Developer training, certification and support resources
    that help you achieve
    S U C C E S S
    Find us in the Partner Demo Area of
    Force.com Zone 2nd Floor Moscone West
    Learn about Developer Certifications
    Discover Developer Learning Paths
  • Remember. . .
    • Check Chatter for additional session information
    • Get your developer Workbooks and Cheat Sheets in the Force.com Zone
    • Visit for more information related to this topic
    Don’t forget the survey!
  • How Could Dreamforce Be Better? Tell Us!
    Log in to the Dreamforce app to submit
    surveys for the sessions you attended
    Use the Dreamforce Mobile app to submit surveys
    OR
    Every session survey you submit is a chance to win an iPod nano!