Is there Pattern to manage : Taxonomy + search (Lucene) + Permission - lucene

I want to develop my own website administration.
Here is my problem, I want to use these technologies :
* search : LUCENE/SOLR
* users' permission : ACEGI (SPRING SECURITY)
* taxonomy (I do not not if there is technologies for this)
So I do not have experience in these technologies. I would like to know if somebody understand my situation in order to help me...I think there is a logical coherence between theses elements but I do not why...Do I need to develop these functionalities as if they were totally independant ?

I've had some success in building web sites using Grails. Grails is the Java-world equivalent to the Rails framework, and is built on top of Spring, Hibernate, and Groovy. It also interfaces smoothly with existing Java code, because it runs in the same virtual machine and is, basically, Java. In addition, Grails has a rich collection of plugins, including ones for search and authentication/security. I am not sure what taxonomy you're referring to, but that may be something you can model using Grails Domain classes.

Related

Is there a tool that can generate apache isis application?

Is there a tool that can generate an apache isis application from JPA classes? Or do I have to rewrite everything with ISIS annotation?
Currently Apache Isis works with JDO, not JPA, so your larger piece of work is to change the JPA annotations. Under the covers we use DataNucleus, which does support JPA, so alternatively you could provide a contribution to enable JPA (this is on our roadmap anyway).
There is no need to add any Isis annotations, but I do anticipate you would need to write additional code in order to expose the business functionality surrounding your core entities. Isis' support for contributed actions and subscribers (over an in-memory event bus) would be a good way to do that.
For further questions, please subscribe to the Isis users mailing list.

How do we call applications implementing only the view and controller parts from the MVC pattern?

I am currently building guidelines and standards for my team. We build two types of applications:
Business Web Applications using Java + MVC2 (EJB3, Struts and JSP) for transactions, scalability and persistence.
Light Web Applications using Java + Struts and JSP for small applications like surveys, small forms, etc. Basically, it's like MVC2 without the model part of it.
I am looking for the right pattern or practice name for the Light Web Applications. I guess "View-Controller" could do the trick but I am trying to find a diagram that would illustrator that "pattern" properly.
Any idea?

Is Doctrine2 too 'big' for this project?

I'm writing an application that manages something like Drupal's nodes. I'm planning on using the app in various content management systems / applications (Concrete5, Wordpress, custom Zend & Yii applications, etc...).
Since I'm using it in so many different places, I have to package an ORM with the app (ie I can't use Conrete5's or Yii's ORM, etc...). I love Doctrine 2, but am concerned that this is too 'big' of an orm to be packaged with my app.
It get's messy, for example, if I'm incorporating this app with a Zend application which is running Doctrine 2. I don't want two 'instances' of Doctrine running in the same app. Is this a warranted concern?
Question: Is Doctrine 2 too 'big' for this project? If so, what would be a good alternative ORM?
If you are going to use your application as an extension for other CMSes and/or frameworks,you should definitley use an ORM for the following reasons which comes to my mind:
1.CMS database installations are different.some use mysql some use oracle ,etc and you will have to create your own adapters or
2.Use CMS's native database abstraction layers.So you will have to rerwite your own model for every cms plugin you are gonna make.
3.Doctrine can do many big jobs but using doctrine is rather easy.doctrine is not resources intensive.
4.using more than one instance of doctrine will not be a problem as far as i know.
5.however doctrine2 requires minimum installation of PHP 5.3 and some shared servers might have older versions of php which this problem will be resolved while time passes and 5.2 becomes obsolete.
However in some CMSes more than one connection will made for your extension to work.(one for the CMS'S native database queries and one for your doctrine query.)
Way 1: work with different ORM's via adapters
(+) better integration with frameworks
(-) a lot of work to implement adapters
(-) loss of flexibility (limited by your adapters interface)
Way 2 (my choice): Use PDO with FETCH_CLASS, it's comfortable enough (you can fetch data to instances of your classes). Most of modern ORM's on PHP works through PDO, so integration must be easy.
Also about Doctrine 2 & Yii -- I tested this combination, works fine.

SQL or NoSQL for Mobile Application Development with Django

We plan to develop a mobile application, typically iPhone and Android, as well as a Web site. The server application will normally be developed with the great Django framework. In terms of features, the application will:
Be multilingual
Let users create their own inner-application. Basically, subscribe to modules to customize the web site features
Let users customize the look and feel of the web application
Hopefully deal with a high number of users :-)
With such features, our project seems to be fairly complex in terms of database relational schema. Because running on very low budget, we want te be agile and the relational database schema will be subject to change a fair amount of time. If we use Django, it automatically comes with a very good SQL - ORM integration and Admin interface.
What would be your advice for our DBMS ? Should we go with a SQL database (integrated with Django) and change the schema from time to time (painful ?) ? Or is worth it to go for NoSQL databases such as MongoDB and/or stop using Django ?
Thank a lot for your advices
I would say "go with the one you are more experienced with, so that you can focus on getting things done instead of googling everything".
If you ask me - I choose NoSQL where applicable because for me it is simpler to setup, scale and use. I like Dynamo based solutions (for example Riak).

Are most of today’s web applications (and web service applications) being written using ORM?

I know there are plenty of threads on when you should/shouldn’t use ORM. But at my level of “expertise” I’m far from qualified to be able to tell whether or not my app would be better off with or without ORM. And I don’t want to wait till I’m proficient enough to figure out whether I should learn ORM or not.
So could you tell me whether or not most of today’s web service apps (and most of web apps in general) are being written using ORM?
PS - I'm learning WCF and Asp.Net Web forms
I guess a lot of webapps (yes, probably most of them) use some orm persistence layer these days, provided they use a relational database. That goes for java (hibernate, jpa), .net, Python, groovy/grails and Rails (ActiveRecord by default).
There are also more and more orm solutions appearing for non-relational data stores.
It certainly depends on the language and application framework you are using, if any.