I have a Drupal 7 site and I want to create a mobile application that will retrieve data from my Drupal site and will also create content of a specific content type.
This content type is very simple. - It contains the following:
* A title
* A body (long text)
* A picture (an image which has to be uploaded to the Drupal site).
I see that there are quite a few modules : restful, restws, services and more...
Which modules do you recommend for my scenario ?
I have used RestWS and Services modules.
RestWS is a simpler module providing CRUD operations for all Drupal resources (nodes, comments, users, etc) built on Entity API.
Services module provides far more functionality but may be overkill for your case. Beyond the functionality provided by RestWS it also provides support for message-oriented or RPC-style web services like SOAP, XML-RPC.
You can also configure your own 'service endpoints'.
If your requirements are simple enough then RestWS may be the most light-weight option, however if you need more configuration or customization options then Services will be the best choice.
Related
We have a running multi-lingual app hosted in Azure written in AngularJS. For managing some of the unsecured/public pages, we are looking for hosting another app with a CMS. So our app structure is would look something like:
App: www.example.com
CMS: www.examplecms.com
What we want to achieve is that dynamic content generated by CMS (different domain) for static pages be served using urls in www.example.com. Is it possible? We are primary targeting .net based CMS solutions but are open to other platforms. The static content is not too complicated.
Since the app supports multiple languages and most of the CMS solutions available offer multi-language support via subdomain.example.com or www.example.com/language/ directory structure, we want the custom url redirection to point to our app site (www.example.com).
Looking for suggestions you opinions or best strategies to work around this problem.
This Q is off topic, nether the less...
As you would essentially be running 2 entirely different web sites, yes everything would work just fine. The requirements are vague and very generic but any application/CMS could be setup in different domains and if you wanted requests made between them, allowing cross origin requests would allow sharing content/data.
Umbraco, like many CMS's supports multilingual sites using path prefixes as you mention along with any other method you are willing to write yourself.
I have a app and I need develop a restfull api to be used for this app.
Is liferay a valid option to develop this (using the service builder and persistence layer of liferay) to expose my service api to be used for the app?
I have in mind the performance and availability to this services.
what another option (to develop the api rest) i should consider for this purpose
Thanks
I expect for your replies.
Regards
Liferay can act as a rest server by service buider (I'm not sure it will support any RESTful operation, but only GET/POST).
By this way you can inherit the interesting features provided such as:
- users, roles and groups
- ready scalable platform
- hibernate+ehcache already configured
Ecc... by the other hand, it will bring a great burden to you... so in my mind, if you are interested to other Liferay native features, then you can use it.
On contrary, there are other ligther frameworks for achieving your needs (just think to Spring MVC, it can implement any other restful method, like so PUT/DELETE... and it is more configurable)... so in this case it will ask you to do a bit more work by hand... but you will not "fight" with a complex platform if it is not necessary.
(In the first hypothesis, don't forget to give an eye to the "Liferay Mobile SDK")
thanks for answer.
In fact, I am interested in use the features of liferay like users, groups, profiles, persistence layer and the web content to manager some resources in the app.
My question is thinking in the performance and scalability of the services layer for this app, if is factible use only liferay to expose all the service to the app need and if her performance will be appropriate.
regards.
I have a PHP background and I have build several web apps with Laravel (3 and 4). I have also experience of using RESTful APIs in my projects.
My current client have an ERP which is bunch of PHP files. Those files contains about 60K lines of spaghetti code. Client doesn't want to invest more money for developing that system so we decided to rewrite the whole app. I know all the risks about rewrite and I have also read Joel's article (http://www.joelonsoftware.com/articles/fog0000000069.html) so there is no need for refactor or rewrite discussion.
For the new app I have been thinking to build RESTful API with Laravel (4 or 5) and frontend with AngularJS. That was before I tested Meteor 1.0. It is very promising and it would be very nice to use it for this project. But is it suitable for this kind of product?
My client's product is something like this:
No public registration for this app (admin creates all the users)
Complex user permissions (group level permissions and user level permissions, 6 groups)
File handling (images, pdf etc.). Files are used as message attachments.
Big data tables
External API calls
App contains sections like: users, orders, offers, time tracking, sales, reporting, calendars, clients.
So is it wise to use Meteor for this kind project or do you prefer RESTful API + AngularJS combo? I'm hesitating because I'm afraid that in big projects using Meteor the code will becode mess.
I'm working on a feasibility analysis for using meteor on a similar project at Google, and I think Meteor would be great for your project.
Admin user creation - check Houston
REST API - [you don't need one for your own tools]( need to think in Meteor terms. ). Meteor has a much simpler mechanism - Meteor.call and Meteor.methods.
User permissions - see the roles package
File handling - see CollectionFS or search Atmosphere for upload.
External API calls - HTTP.get makes it trivial. See also Atmosphere for specific packages.
Big data tables - see this answer about table widgets
Don't know much about Meteor, but for the Angular variant you can take a look at this POC application using a AngularJS client and a REST Server:
https://groups.google.com/forum/#!topic/angular/Q3GrhAH39AU
http://www.civilian-framework.org/doc-samples.html#crm
Drupal is a CMS, not a web framework.
Does this mean it should only be used for publishing posts, blogs, graphs or what ever content you can think of or can it be used for more sophisticated applications with 'true' business logic behind the scenes ?
Can it be used for developing a resource management application? Can we extend the Drupal database with our own tables that represent business objects?
You should be able to extend Drupal with custom modules to achieve your business goals. I wouldn't add onto the Drupal database adjusting it's schema since that would make patching and upgrading difficult to say the least. You could use an additional database if needed if the existing Drupal database API doesn't meet your needs. There is also a Drupal services module available (https://drupal.org/project/Services) that you could use for a web API interface between your app and Drupal to access it's objects.
This Stackoverflow post also may provide some answers, Web application integration with Drupal -- I have been involved with successful back-office business applications that utilize a CMS such as Drupal extending it using custom modules and an additional database for custom data objects.
I want to create a limited version of my app on mobile.
My app is at www.accountingguru.in (appid: accountingguru-india.appspot.com). It is using Servlets/GWT/Objectify 3.1
I am figuring out how to move forward with the design/development choices for a limited mobile app
What is a good url for Mobile User experience.
www.accountingguru.in/mobile
mobile.acccountingguru.in
-Aswath
It can be both if you properly set your domain names (and GAE mapping) and use some url rewriting. The first option might be easier from the authentication perspective.
If you use GWT/GAE it needs to be a common project if you want to have one GAE instance. In practical terms you can not have two different GWT projects and upload them to same GAE instance. As far as GWT goes - you can have two separate entry points: one for desktop and the other for mobile browsers.
You can have same url.
Use deferred binding to achieve different UI according to user.agent
Define a module .gwt.xml to detect the user.agent
On your applications's module use the return value to choose the appropriate implementation.
Have a look at the sample projects in gwt.