Public Cloud

Getting started with ReactJS, Play 2.4.x, Scala, Anorm and WebJars

Reading Time: 2 minutes playing-reactjs This blog describes a basic example to render UI using React(A JavaScript library for building user interfaces) with Play 2.4.x, Scala, Anorm and WebJars. It also demonstrates the use of evolution in Play 2.4.x This is a classic CRUD application, backed by a JDBC database. It demonstrates: Handling asynchronous results, Handling time-outs Achieving, Futures to use more idiomatic error handling. Accessing a JDBC database, Continue Reading

Play Framework 2.2 with WebJars client-side web libraries

Reading Time: < 1 minute WebJars are client-side web libraries (e.g. jQuery & Bootstrap) packaged into JAR (Java Archive) files. WebJars can be added as dependencies to an app by simply adding them to the build.sbt file. There is also a helper library named webjars-play that makes it easy to reference WebJar assets. Here is an example build.sbt file with webjars-play and the bootstrap WebJar as dependencies. Do the following Continue Reading

Employee-Self-Service: Reactive and Non-Blocking Database Access using Play Framework and Anorm – (Part-4)

Reading Time: 2 minutes Last week, We have added Database Access as Reactive and Non-Blocking behaviour in Employee-Self-Service  application. Now we have added some more features. These are following: Achieving, Futures to use more idiomatic error handling. Replaced the embedded JS & CSS libraries with WebJars. Achieving, table pagination and sorting functionality. Before: def list() = Action.async { implicit request => val futureEmpList = scala.concurrent.Future { Employee.list } val timeoutFuture = Promise.timeout("Oops", Continue Reading

Preparing Seed Data for Your Application on Google App Engine

Reading Time: 3 minutes For the past few weeks, we have been getting requests on our website about the way we generated seed data for our multi-tenant application. I thought it would be best to talk about the method that we used as a part of a separate post. If you have been following our blog, you would notice that TE-CON launched the public beta of bookmyhours.com. This is Continue Reading

Multitenancy in Google App Engine: Scope of NamespaceManager

Reading Time: 2 minutes As you would have read in our previous post, we used the Namespace API to make the SaaS application that we were working on multi-tenant in a matter of four hours. You would have noticed that we set the tenant name in the NamespaceManager [sourcecode language=”java”] NamespaceManager.set(request.getServerName()); [/sourcecode] Our initial assumption was that the NamespaceManager would continue to exist for the lifetime of the session Continue Reading

Managing Multiple Parent Persistence Problem in App Engine

Reading Time: 3 minutes We are in process of porting an entire application on google app engine. This application has persistence using JPA and as usual contains mapping between entities using annotations. The mapping like @OnetoMany and @ManytoOne in Jpa may throw lot of errors in google app engine and therefore is neither straightforward nor trivial. In this blog we will see where our mapping may fail, with specific Continue Reading

Why Unowned Relationships Make More Sense With App Engine Datastore

Reading Time: 4 minutes A month back we started migrating an enterprise time keeping and invoicing system to GAE. Initially, the application was deployed at the enterprise on tomcat. The opportunity was to port the application to GAE and utilize the public cloud space. The choice about GAE was based on the expected ease of migration and then not having to worry about any infrastructure maintenance. As you would Continue Reading