3

I'm getting started on a contracting project bid, and I was hoping for some advice on the best way to go about it.

I am being asked to develop an Android application for inventory management for a small company (no more than a few thousand SKUs at most) for Android tablets and I'm trying to come up with the architecture for the system.

I was thinking of using MS Server 2008 hosting a MSSQL database. This database would be exposed via REST services, as the DB would need to be accessible remotely (through Android tablets by salespeople).

I haven't used SQL much in the past, but I am thinking this is likely the best solution, along with REST for performing remote DB transactions.

Basically the functionality would be to view stock, order items, check prices, etc.

I would appreciate any advice anyone has on this topic.

Thanks!

Codeman
  • 12,157
  • 10
  • 53
  • 91
  • 1
    I think you are already thinking in the right direction. In addition, you need to make sure that the CRUD operation is secure (via SSL, API, login and session token) as well as removing the possibility of SQL Injection in the REST Webservice. If you need more details, I'll be happy to post an answer. – momo Aug 21 '11 at 04:55

5 Answers5

4

I recommend you go over this article: Creating an OData API for StackOverflow including XML and JSON in 30 minutes. Then, consider the odata4j project.

Remus Rusanu
  • 288,378
  • 40
  • 442
  • 569
2

Also, here is an interesting lecture about clienting REST for android:

http://developer.android.com/videos/index.html#v=xHXn3Kg2IQE

  • I've developed a REST client for Android before, I'm more interested in how to implement the backend side of things. Thanks though! – Codeman Aug 22 '11 at 13:48
1

I recommend you take a look at restSQL, an ultra-lightweight persistence framework. It currently supports MySQL and PostgreSQL. See http://restsql.org. It runs in a standard Java EE container, e.g. Apache Tomcat.

restSQL is not a conventional ORM. It does not present an object-oriented view of the database. It presents flat or hierarchical "views" of relational database tables. These views are query-able and updatable through a simple REST-based HTTP or Java API. The HTTP interface is based on REST principles, which use HTTP’s built-in features, rather than abstracting away from them.

Arjan Tijms
  • 37,782
  • 12
  • 108
  • 140
Mark Sawers
  • 302
  • 3
  • 7
1

I would go for Oracle Application Express. They have build in Jquery Mobile and easy to expose a report list as Rest web service. Then use Phinegap and Jquery for Android apps.

Take look my quick sample: http://m.youtube.com/index?desktop_uri=%2F&gl=US#/watch?v=5rfuq-e-_Ws

You are not building an enterprise system....give a try Oracle Apex...you will be addicted to it.

Phonegap, Jquery Mobile and SQLite as local database on Android tablet .... Only if you need offline capability. Otherwise just use Oracle Apex with build in Jquery Mobile will be super solution!

Tobin
  • 11
  • 2
  • Unfortunately I'm not really interested in using PhoneGap for this project, but I appreciate it! I'll read some more about Oracle Apex. – Codeman Dec 17 '11 at 02:55
0

I have used http://www.remobjects.com/ for this. Create the server in .net, delphi and clients in anything.

Also, is possible to use just http://www.remobjects.com/da/relativity.aspx if not have heavy logic in the middle-tier.

mamcx
  • 15,916
  • 26
  • 101
  • 189