My friend and I want to develop a big web2.0 project. We decided to write it in Java because we love it and we are good at it and the other libraries which we will use are written in Java (Apache Lucene, Apache Cassandra ...). and we choose GWT as a framework. We love google, google technologies, google apis.
and I want to ask do you think that GWT is suitable to launch the big projects like youtube, twitter, wikipedia and other... ? Is gwt-rpc mechanism reliable in big projects?
Well GWT is suitable for web applications and not web sites or web pages, GWT is suitable for applications like Gmail which is a BIG application yet contains a single page which has complex actions.
GWT fails in some projects with many pages, We used GWT in an ERP system which contained about 100 page each page represents CRUD operations + some business operations, GWT wasn't the perfect choice.
Other thing GWT may fail in is that web crawlers can't extract information from javascript files generated by GWT. Search engines prefer static HTML generated from server side, and not generated on client side by javascript as GWT does. So, Google search engine will not give results from your site.
In summary, GWT is suitable for web applications with fewer number of pages and more complex actions.
Your examples (youtube, twitter, wikipedia) are not good candidates for GWT, so if you're building that type of application you'll probably want to stick to traditional server based frameworks like SpringMVC or Spring Roo.
GWT is better suited for applications that would traditionally be desktop based and need to do a lot of processing on the client side such as email clients, games, reporting apps, word processors, etc...
I want to point out that "in big projects if generated javascript codes is larger and larger, User is obligated to wait to download js file before to use web site."