how to make i18next uses Spring MVC message Resources - spring

I'm developing an SPA with Backbone, using Marionette and Handlebars, also Spring MVC. We need i18n support both in templates and Spring Controllers. Someone has recommended me i18next for Handlebars templates.
The problem is that i18next needs a JSON message source, and Spring uses properties files.
¿There is any way that both (Spring and i18next) of them share the same Message source?. I can change i18next for another component, if it makes it work.

Related

thymeleaf vs thymeleaf-spring4 dependency

Question is simple, what is the difference between the above dependencies? Does the first one enough for a springboot app or the second contains something special?
Artifact thymeleaf is the Core library.
Artifact thymeleaf-spring4 allows to integrate Thymeleaf with the Spring Framework, especially (but not only) Spring MVC. Btw there are several Thymeleaf integration packages for different Spring versions are available at the moment:
thymeleaf-spring3, thymeleaf-spring4, thymeleaf-spring5.
Information from thymeleaf-spring official documentation:
Thymeleaf offers a set of Spring integrations that allow you to use it as a fully-featured substitute for JSP in Spring MVC applications.
These integrations will allow you to:
Make the mapped methods in your Spring MVC #Controller objects forward to templates managed by Thymeleaf, exactly like you do with JSPs.
Use Spring Expression Language (Spring EL) instead of OGNL in your templates.
Create forms in your templates that are completely integrated with your form-backing beans and result bindings, including the use of property editors, conversion services and validation error handling.
Display internationalization messages from message files managed by Spring (through the usual MessageSource objects).
Resolve your templates using Spring’s own resource resolution mechanisms.
If you use Spring Boot, you can just use the spring-boot-starter-thymeleaf dependency. It already contains the above two dependencies as well as some others.

How to install React js with Spring framework?

I can't figure out how to install React.js for Spring framework.
A website said to first install NPM. Yes, I did that.
But how can I use React.js in Spring MVC?
mac and windows need to install NPM?
just use use CDN -> this case occur error
how to searching basic course
only use spring boot?
could you give a Web site address for how to install Spring
Frameworks with React.js
could you give to me tips for how to install React.js for Spring
Frameworks?
I'm a beginning developer.
The best answer I can give you is to walk through this tutorial, step by step.
https://spring.io/blog/2015/09/01/react-js-and-spring-data-rest-part-1-basic-features
To answer your first question, no, you do not need to use node.js tools to use React with Spring MVC. The tutorial above says:
This tutorial won’t go into extensive detail on how it uses require.js
to load JavaScript modules. But thanks to the frontend-maven-plugin,
you don’t have to install any of the node.js tools to build and run
the code.
Spring MVC and ReactJS follow some different concepts of designing your webapplication. With Spring MVC your create most of the time server side rendered webapps with JSPs or you use a template engine like Thymeleaf.
With ReactJS you are building a Singe Page Application (SPA) which can be accessed with a SINGLE HTML file, often index.html and your JavaScript is doing the rendering. With Spring MVC you provide several .html files and use Spring to route the different routes to your different .html files and render them on the server side.
The only thing I can guess is to serve your finally built ReactJS which consists only of one .html and several .js and other assets with a Spring MVC application which acts like a simple Webserver.
Furthermore you can use Spring MVC to provide RESTful interfaces for your React application.

Questions integrating new Groovy template engine with Spring MVC and Spring Boot

As blogged on spring.io both Spring 4.1 and Sprig Boot will integrate the new Groovy template engine (https://spring.io/blog/2014/05/28/using-the-innovative-groovy-template-engine-in-spring-boot, http://spring.io/blog/2014/07/28/spring-framework-4-1-spring-mvc-improvements).
I wonder the following:
Will Spring provide something like it does with the Spring Forms and Spring Security taglib?
If not what would be best to e.g. render form fields and more importantly form errors?
I think without it it will be a step back to develop a traditional Spring MVC webapp.
The template engine suports something like a BaseTemplate (see http://mrhaki.blogspot.nl/2014/08/groovy-goodness-use-custom-template.html) where it would be possible to provide custom methods to the template engine.
Related to this:
You can only provdide a single base template, so it will be difficult to include methods from multiple extension points. E.g. Spring Forms, Spring Security and multiple custom extensions like Fontawesome.
Is it possible to set the base template with Spring Boot?
A simple way to expose a lot of the spring specific attributes csrf etc... is to include spring.groovy.template.expose-request-attributes = true in your application.properties

Ajax support in Spring MVC 3.0

We are just starting a new web application using Spring MVC 3.0.
We will be using lot of Ajax in our application. I wanted to know if there is any in built support for Ajax (like Struts 2) in Spring MVC 3.0 or do we have to use some third party API like DWR or jQuery?
We have used lot of both DWR and jQuery in our other applications based on Struts 1 and Struts 2. So, we are very familiar with both of them.
Thanks!
Spring mvc 3 supports Ajax. Check this
As explained in the link in Viren Pushpanayagam's answer, the typical way to use ajax with Spring is to use JQuery (or plain JS or other framework, it doesn't matter) to make ajax call, passing necessary parameters. Spring controller handles request and returns JSON (which is very simple in Spring if you just annotate your controller with #ResponseBody and include Jackson Mapper or Gson in your classpath). There is no Spring tag library or other feature that performs the ajax functionality that I am aware of.

Experiences with integrating spring 3 mvc with GWT?

Given:
Spring 3.0 mvc has excellent REST support with one of the representation being JSON.
GWT simplifies development as UI is developed in java. But by default it uses RPC for client server interaction. But there is an option to use JSON.
Questions:
Can you share experiences with using Spring 3.0 mvc with GWT ?
What is the best approach to integrate these two frameworks?
Is the default GWT's MVP architecture only for client side and does it work well with JSON?
Thanks
Can you share experiences with using Spring 3.0 mvc with GWT ?
Yes. We've successfully built a whole large application around GWT and Spring MVC (1500 source files, 6 months in development).
Spring was the key to the project's success. Only with Spring we were able to test individually some pieces of the application on the server side.
What is the best approach to marry these two frameworks?
Ignore the default Servlet used by GWT and instead create your own Spring controller to handle incoming GWT-RPC requests. This blog post was the key to integrating the two techs.
We also successfully integrated other components: Flash for animated charts and third-party Javascript components for other stuff. These communicate with the server through JSON. So you have two or more kinds of URLs:
the *.rpc urls are for GWT components and are served by the Spring controller for gwt
the *.json urls are for other components and are served by another Spring controller.
Also, in our case, we shunned configuration with annotations and instead preferred configuration with the good old Spring XML files. They make it much more clear what's going on. Except for the #Required annotation; it's great to find spring beans that should be connected but aren't.
Is the default GWT's MVP architecture only for client side and does it work well with JSON?
GWT's MVP architecture works best if you follow the guide lines. Use GWT-RPC communication as Google suggests.
You can still have JSON for other client-side components.
Try this solution: GWT and Spring MVC Integration
It uses 3 classes. Its very simple, declarative and clear.
It's stupid to mix Spring MVC and GWT. Also it's stupid to mix Spring MVC and JSF... It's stupid to mix 2 MVC (MVP) frameworks together. But you can use Spring DI and GWT for sure!
You may want to check out Spring Roo. It will help you get started quickly with Spring MVC, especially when dealing with RESTful URLs. It also provides a means to automatically set up GWT "scaffolding" (GWT code to interact with the Spring MVC backend). Hope it helps!

Resources