Decepcionado com o Java para web!

38 respostas
H

Estou entrando no mundo Java para Web. Nunca achei tão dificil programar Java para web assim. Tentei partir para os frameworks, porém, não me ajudou nada! Sempre me vem com as mesmas coisas: TAGS. Quando eu quis fugir das tags, tentei usar o scriptleet, mas fui ignorado, segundo o que me disseram, scriptleets está totalmente defazado.

Vou tentar explicar o que está acontecendo: Além de ser desenvolvedor Java, gosto de usar CSS, e Javascript(JQuery). Quando eu programava para PHP a um bom tempo atrás, eu poderia implementar meus códigos php junto com o HTML. O que faz que eu tenha total controle sobre o CSS e Javascript, ou seja, o meu código, como um todo. Por exemplo, se eu crio um formulário com a tag comum do html, eu consigo aplicar sem problemas o CSS e o JQuery. Mas, com o Java, eu não consigo fazer nada disso! Sempre que eu tenho que chamar um método ou uma variavel de uma classe Java, eu tenho que usar as malditas tags. Veja, eu quero exibir uma lista de informações que eu peguei em uma bd:

<display:table id="data" name="sessionScope.UserForm.employeeList" requestURI="/userAction.do" pagesize="10" >
            <display:column property="id" title="Id" sortable="true"   />
            <display:column property="userName" title="User Name" sortable="true"  />
            <display:column property="emailId" title="Email Id" sortable="true"  />
        </display:table>

(Código retirado da Internet)

Como vou aplicar isso um CSS e um JQuery ? Há, não me venha com PrimeFaces! Não seria mais fácil usar um scriptleet para chamar a variavel e/ou o método para o HTML ?
Pesquisando na Internet, veja outro exemplo, utilizando framework Spring:

<tr>
        <td>Country :</td>
        <td>
            <form:select path="country">
            <form:option value="0" label="Select" />
            <form:options items="${countryList}" itemValue="countryId" itemLabel="countryName" />
            </form:select>
        </t

A situação pode ficar muito pior. Veja só esse LINK mostrando de como usar uma paginação em jsp e servlet. Veja a burocracia que você faz de chamar as variaveis e usa-las no seu html.
Pesquisando na internet, veja como é feita em C#:

<ul id="products">

@foreach(var p in products) {
   <li>@p.Name ($@p.Price)</li>

}

<%
</ul>

Não fica muito mais simples ?

Eu quero poder programar Java para web de forma mais fácil, e poder usar outras tecnologias juntas. Há uma maneira mais fácil para isto ?

38 Respostas

T

Esse exemplo do displayTable é do JSF não? JSF realmente não é o melhor framework a se utilizar se você quer total controle sobre a sua UI.

Procure usar um framework action-based, que é menos invasivo. Pesquise por frameworks como Play!, VRaptor, Mentawai, Spring MVC, etc.

Eu tava vendo o exemplo de JSP e Servlets que você postou. Claro que o código Java como um todo poderia ficar mais simples, mas a JSP que o autor colocou não está difícil de aplicar JQuery e CSS. A tag <c:forEach> funciona da mesma maneira que o @foreach do exemplo de C# que você postou.

T

Sobre scriplets, elas já são mal vistas em Java há bastante tempo, porque em Java sempre tivemos a possibilidade de usar tags no lugar dos scriptlets. Porém em frameworks como Ruby on Rails ou ASP MVC (nas versões mais recentes) o uso de scriplets foi readotado.

Eu particularmente não sou contra usar scriptlets. Só tome cuidado com o código que você coloca na página: sua lógica deve ser exclusivamente de apresentação, e nada mais.

K

Cara, usa o apache click.

[url]click.apache.org/ [/url]

pra ter noção da facilidade aqui ta seu html puro.
<body> 
  <div id="header">
    <span id="title">$title</span>
  </div> 
</body>
e aqui sua classe java
public class HomePage extends Page {  
    public String title = "Home";  
}

se vc notou vc acessa a variavel no html com o mesmo nome da variavel no java usando apenas "$" e a unica coisa é sua classe java extender Page.
existem outros frameworks com essa facilidade tipo o wicket mas o click pra mim é o mais facil e rapido.

o que eu vejo de legal nele:
integra com acegi security (spring security) , jquery, jsf (se quiser) , velocity e tem suporte ajax.

W

Soh uma correcao, isso nao eh C#. Isso eh Razor, que eh uma view engine para ASP.NET MVC

<ul id="products">  
  
@foreach(var p in products) {  
   <li>@p.Name ($@p.Price)</li>  
  
}  
  
<%  
</ul>

Mas eu acho que vc tem razao, .NET elimina muito a complexidade das tarefas chatas que demandam muito tempo dos desenvolvedores.

Com Java infelizmente, para fazer uma coisa simples, vc tem que instalar 1001 frameworks, plugins, etc etc etc, para escrever um hello world numa pagina. Mas isso nao quer dizer que nao seja legal programar em Java. :slight_smile:

//Daniel

A
kdoigor:
Cara, usa o apache click.

[url]click.apache.org/ [/url]

pra ter noção da facilidade aqui ta seu html puro.
<body> 
  <div id="header">
    <span id="title">$title</span>
  </div> 
</body>
e aqui sua classe java
public class HomePage extends Page {  
    public String title = "Home";  
}

se vc notou vc acessa a variavel no html com o mesmo nome da variavel no java usando apenas "$" e a unica coisa é sua classe java extender Page.
existem outros frameworks com essa facilidade tipo o wicket mas o click pra mim é o mais facil e rapido.

o que eu vejo de legal nele:
integra com acegi security (spring security) , jquery, jsf (se quiser) , velocity e tem suporte ajax.

Ele ainda é mantido? Já tem quase um ano e meio que não tem atualização pra ele e o Jenkins nem monta mais o projeto há quase seis meses.

G

Cara você pode usar o JSF.
Facil de usar e você pode usar ambas tecnologias… só você dar uma pesquisada no forum da GUJ

D

Vão para o quinto dos infernos com isso.
Ô povinho fresco.
Não está contente, sinto dizer-te, o problema não é o java é você.
Ao menos você estudou para saber a diferença entre todos os códigos que está criticando?
“Ah, mas em PHP era fácil assim”. Porra, vai programar em PHP então.
“Ah, mas em ‘C#’, .NET é mais susse”. Cacete, vai programar nesta linguagem.
“Nossa, o drsmachado é estressado”. Não. Só não tenho mais saco para ver tópicos de pessoas medíocres, sem capacidade, que criticam as coisas.

1 - HTML não usa tags?
2 - Todo framework component-based é enrolado para aplicação de CSS. Se você tivesse o mínimo de capacidade, conseguiria entender isso.
3 - Se você fosse tão bom com javascript e html, não precisaria colocar nada de código de qualquer linguagem que fosse. Só com javascript e seus recursos você resolve isso.
4 - Cada linguagem tem uma filosofia, a do java diz que scriptlets, embora funcionais, são aberrações.
5 - Se você está frustrado, vai fazer tricô.

Ah, sinto te dizer, mas, há frameworks e implementações de especificações, como o primefaces e o richfaces, que fazem uso do jQuery para melhorar a aparência dos componentes e há iniciativas como o struts2-jquery-plugin, que disponibiliza tags que customizam e facilitam o uso de jQuery em struts 2.

E, repito, se você tem problemas para resolver esta ou aquela situação com uma determinada linguagem, é por que você é incapacitado nela. Se você realmente domina uma linguagem, não há nada que não possa fazer com ela.

C

hackum:

Pesquisando na internet, veja como é feita em C#:

<ul id="products">

@foreach(var p in products) {
   <li>@p.Name ($@p.Price)</li>
}

</ul>

Não fica muito mais simples ?

Eu quero poder programar Java para web de forma mais fácil, e poder usar outras tecnologias juntas. Há uma maneira mais fácil para isto ?

Olá colega!

Este mesmo código pode ser feito em JSP da seguinte maneira:

<ul id="products">

<c:forEach var="p" items="${products}">
   <li>${p.name}(${p.price})</li>
</c:forEach>

</ul>

Qual a dificuldade em utilizar CSS e Javascript neste caso? Absolutamente nenhuma.
Abraços

H

drsmachado:
Vão para o quinto dos infernos com isso.
Ô povinho fresco.
Não está contente, sinto dizer-te, o problema não é o java é você.
Ao menos você estudou para saber a diferença entre todos os códigos que está criticando?
“Ah, mas em PHP era fácil assim”. Porra, vai programar em PHP então.
“Ah, mas em ‘C#’, .NET é mais susse”. Cacete, vai programar nesta linguagem.
“Nossa, o drsmachado é estressado”. Não. Só não tenho mais saco para ver tópicos de pessoas medíocres, sem capacidade, que criticam as coisas.

1 - HTML não usa tags?
2 - Todo framework component-based é enrolado para aplicação de CSS. Se você tivesse o mínimo de capacidade, conseguiria entender isso.
3 - Se você fosse tão bom com javascript e html, não precisaria colocar nada de código de qualquer linguagem que fosse. Só com javascript e seus recursos você resolve isso.
4 - Cada linguagem tem uma filosofia, a do java diz que scriptlets, embora funcionais, são aberrações.
5 - Se você está frustrado, vai fazer tricô.

Ah, sinto te dizer, mas, há frameworks e implementações de especificações, como o primefaces e o richfaces, que fazem uso do jQuery para melhorar a aparência dos componentes e há iniciativas como o struts2-jquery-plugin, que disponibiliza tags que customizam e facilitam o uso de jQuery em struts 2.

E, repito, se você tem problemas para resolver esta ou aquela situação com uma determinada linguagem, é por que você é incapacitado nela. Se você realmente domina uma linguagem, não há nada que não possa fazer com ela.

Desculpa cara, mas se ele está aqui no fórum perguntando é porque ele não sabe, senão não perguntaria! O fórum é pra isso não é?
Ninguém posta dúvidas para insultar seus conhecimentos ou fazer você perder seu tempo. Bastava apontar os erros e indicar o caminho, não precisa insultar ninguém, pega leve!

K
Ataxexe:
kdoigor:
Cara, usa o apache click.

[url]click.apache.org/ [/url]

pra ter noção da facilidade aqui ta seu html puro.
<body> 
  <div id="header">
    <span id="title">$title</span>
  </div> 
</body>
e aqui sua classe java
public class HomePage extends Page {  
    public String title = "Home";  
}

se vc notou vc acessa a variavel no html com o mesmo nome da variavel no java usando apenas "$" e a unica coisa é sua classe java extender Page.
existem outros frameworks com essa facilidade tipo o wicket mas o click pra mim é o mais facil e rapido.

o que eu vejo de legal nele:
integra com acegi security (spring security) , jquery, jsf (se quiser) , velocity e tem suporte ajax.

Ele ainda é mantido? Já tem quase um ano e meio que não tem atualização pra ele e o Jenkins nem monta mais o projeto há quase seis meses.

bem lembrado, nao tinha visto isso. uma pena se não derem continuidade pois é um framework divertido de trabalhar.

G

hackum,

Acho que esse display:table é do componente displaytag. Já usei e sei que da pra fazer miséria com css pra mostrar as informações. É só ler a documentação.
De qualquer forma, dá pra fazer tudo isso que você quer usando servlets/jsp/jstl.

R

drsmachado:
Vão para o quinto dos infernos com isso.
Ô povinho fresco.
++
:lol:

L

drsmachado:
Vão para o quinto dos infernos com isso.
Ô povinho fresco.
Não está contente, sinto dizer-te, o problema não é o java é você.
Ao menos você estudou para saber a diferença entre todos os códigos que está criticando?
“Ah, mas em PHP era fácil assim”. Porra, vai programar em PHP então.
“Ah, mas em ‘C#’, .NET é mais susse”. Cacete, vai programar nesta linguagem.
“Nossa, o drsmachado é estressado”. Não. Só não tenho mais saco para ver tópicos de pessoas medíocres, sem capacidade, que criticam as coisas.

1 - HTML não usa tags?
2 - Todo framework component-based é enrolado para aplicação de CSS. Se você tivesse o mínimo de capacidade, conseguiria entender isso.
3 - Se você fosse tão bom com javascript e html, não precisaria colocar nada de código de qualquer linguagem que fosse. Só com javascript e seus recursos você resolve isso.
4 - Cada linguagem tem uma filosofia, a do java diz que scriptlets, embora funcionais, são aberrações.
5 - Se você está frustrado, vai fazer tricô.

Ah, sinto te dizer, mas, há frameworks e implementações de especificações, como o primefaces e o richfaces, que fazem uso do jQuery para melhorar a aparência dos componentes e há iniciativas como o struts2-jquery-plugin, que disponibiliza tags que customizam e facilitam o uso de jQuery em struts 2.

E, repito, se você tem problemas para resolver esta ou aquela situação com uma determinada linguagem, é por que você é incapacitado nela. Se você realmente domina uma linguagem, não há nada que não possa fazer com ela.

Falou o fodão! Nem todos tem a “sabedoria” que vc tem. Talvez vc nunca foi um iniciante e teve o dom mágico de já nascer sabendo tudo. Sr. Mestre da Programação, se não quer ajudar, não precisa detonar!

W

Colocação mais absurda!, creio que você aprendeu a programar na faculdade, pobres palavras.

drsmachado:
Vão para o quinto dos infernos com isso.
Ô povinho fresco.
Não está contente, sinto dizer-te, o problema não é o java é você.
Ao menos você estudou para saber a diferença entre todos os códigos que está criticando?
“Ah, mas em PHP era fácil assim”. Porra, vai programar em PHP então.
“Ah, mas em ‘C#’, .NET é mais susse”. Cacete, vai programar nesta linguagem.
“Nossa, o drsmachado é estressado”. Não. Só não tenho mais saco para ver tópicos de pessoas medíocres, sem capacidade, que criticam as coisas.

1 - HTML não usa tags?
2 - Todo framework component-based é enrolado para aplicação de CSS. Se você tivesse o mínimo de capacidade, conseguiria entender isso.
3 - Se você fosse tão bom com javascript e html, não precisaria colocar nada de código de qualquer linguagem que fosse. Só com javascript e seus recursos você resolve isso.
4 - Cada linguagem tem uma filosofia, a do java diz que scriptlets, embora funcionais, são aberrações.
5 - Se você está frustrado, vai fazer tricô.

Ah, sinto te dizer, mas, há frameworks e implementações de especificações, como o primefaces e o richfaces, que fazem uso do jQuery para melhorar a aparência dos componentes e há iniciativas como o struts2-jquery-plugin, que disponibiliza tags que customizam e facilitam o uso de jQuery em struts 2.

E, repito, se você tem problemas para resolver esta ou aquela situação com uma determinada linguagem, é por que você é incapacitado nela. Se você realmente domina uma linguagem, não há nada que não possa fazer com ela.

H

Amigo, veja só a forma que você me trata ao fazer uma pergunta em um fórum Java:

drsmachado:
Vão para o quinto dos infernos com isso.
Ô povinho fresco.
Não está contente, sinto dizer-te, o problema não é o java é você.
Ao menos você estudou para saber a diferença entre todos os códigos que está criticando?
“Ah, mas em PHP era fácil assim”. Porra, vai programar em PHP então.
“Ah, mas em ‘C#’, .NET é mais susse”. Cacete, vai programar nesta linguagem.
“Nossa, o drsmachado é estressado”. Não. Só não tenho mais saco para ver tópicos de pessoas medíocres, sem capacidade, que criticam as coisas.

1 - HTML não usa tags?
2 - Todo framework component-based é enrolado para aplicação de CSS. Se você tivesse o mínimo de capacidade, conseguiria entender isso.
3 - Se você fosse tão bom com javascript e html, não precisaria colocar nada de código de qualquer linguagem que fosse. Só com javascript e seus recursos você resolve isso.
4 - Cada linguagem tem uma filosofia, a do java diz que scriptlets, embora funcionais, são aberrações.
5 - Se você está frustrado, vai fazer tricô.

Ah, sinto te dizer, mas, há frameworks e implementações de especificações, como o primefaces e o richfaces, que fazem uso do jQuery para melhorar a aparência dos componentes e há iniciativas como o struts2-jquery-plugin, que disponibiliza tags que customizam e facilitam o uso de jQuery em struts 2.

E, repito, se você tem problemas para resolver esta ou aquela situação com uma determinada linguagem, é por que você é incapacitado nela. Se você realmente domina uma linguagem, não há nada que não possa fazer com ela.

Pra mim, você não está não hábil a participar de um fórum Java, onde nos propõe um espaço destinada a promover debates através de mensagens. Eu fiz uma pergunta quaisquer relacionado ao Java, portanto, de acordo com as diretrizes do fórum, eu cumpri. O objetivo era poder conhecer opniões de programadores mais experientes que possam me da uma solução do problema, a qual eu não conhecia. E você com sua completa arrogância, veio me insultando, achando que tem total controle sobre qualquer coisa. O que não se passa de apenas um pseudo-intelectual. O pior são os seus seguidores, que adotem a sua ideia. Se você não está de acordo com o tópico que foi postado, é simples, basta não responder. Pelo simples fato de achar um tópico inútil, isso não dará o direito de insultar o autor. Se todos acham o mesmo, é simples, envie uma mensagem ao moderador, e peça-o para retirar o tópico. Portanto, cabe ao moderador para isso. Mas, se ele é capaz de retirar o meu tópico por ser inútil, então, ele é capaz de punir você pelo seu comentário, por se tratar como inútil também. Porque uma pessoa que gosta de insultar os demais, não se passa de um inútil, assim como você.

R

Don’t feed the trolls.

W

Sou experiente em PHP e JAVA WEB a muitos anos, e entendo o que estar dizendo. passando de PHP onde temos total controle sobre a aplicação com facilidade de programação e quando passamos pra JAVA WEB ficamos totalmente perdidos.
ao contrario do amigo que fica criticando, posso te dar certeza que não possui cultura nenhuma em programação ou seja são aqueles caras que se formam pela faculdade e conheceu um linguagem no mais basico delas e acha que pode chegar
criticando e falando palavras erronias pobre rapaz.

Cara parabéns pelo exemplo claro que deixou entre as linguagem quanto a java.

A

Falou o fodão! Nem todos tem a “sabedoria” que vc tem. Talvez vc nunca foi um iniciante e teve o dom mágico de já nascer sabendo tudo. Sr. Mestre da Programação, se não quer ajudar, não precisa detonar!

Preciso admitir que o drsmachado tem uma certa razão nas colocações dele. Afinal de contas, tudo bem, a maneira como ele colocou não foi das mais felizes, mas nada foi além de uma reação a partir de algo que alguém colocou já em tom de crítica. Afinal, o hackum já disse, de antemão, que é iniciante na linguagem e achou “muito complicado” fazer a mesma coisa que se faz em outras linguagens (nas quais provavelmente ele já tem mais experiência) do que em Java. Oras, isso não é mais um ataque à linguagem Java sem sequer conhecer como funciona?

Sem contar que o exemplo do hackum foi meio capcioso, já que ele colocou como exemplo de Java um código um pouco mais complexo, e como exemplo de outras códigos menos complexos. Afinal de contas, fica muito mais fácil dizer que C# é mais fácil do que Java se você colocar, como exemplo de C#, uma leitura de arquivos simples contra um CRUD completo em Java (isso vale para qualquer linguagem!!). Não comparemos maçã com banana.

Quanto ao hackum, tenho o seguinte para colocar:

  1. PHP foi feita apenas para sistemas na web. Ponto. Não dá pra comparar corretamente com uma linguagem como Java, que foi feita para um propósito muito mais amplo.
  2. Antes de criticar, veja o que há de mais moderno e veja o que acha. É possível fazer sites com Java utilizando:
    • Play! Framework
    • HTML5 e javascript (sim, sem absolutamente nada de Java no front-end em si)
    • utilizar geradores como o Jboss Forge.
    • e outros…
  3. Um fato: Java não é (mais) uma das linguagens mais amigáveis para se criar sistemas na web. No entanto, são os requisitos não-funcionais que ela atende que ainda fazem a linguagem valer (e muito!) a pena de se colocar em empresas.

[]'s

H

Eu sou apaixonado pelo Java! Eu não estou atacando a linguagem. O objetivo do tópico, era conhecer uma maneira mais fácil de integrar o Java com o HTML, sem ter de usar tags para isso. Eu não programo em outras linguagens, eu programo apenas em Java. Quando eu “brinquei” com o PHP, eu pude ver a diferença de ambas linguagens.

Eu gostaria de por exemplo, como os frameworks, que utilizamos tags, porque não fazer com que chamamos o método e/ou variavel ?

H

Sem querer enviei 2 mensagens seguidas.

A

Falou o fodão! Nem todos tem a “sabedoria” que vc tem. Talvez vc nunca foi um iniciante e teve o dom mágico de já nascer sabendo tudo. Sr. Mestre da Programação, se não quer ajudar, não precisa detonar!

Preciso admitir que o drsmachado tem uma certa razão nas colocações dele. Afinal de contas, tudo bem, a maneira como ele colocou não foi das mais felizes, mas nada foi além de uma reação a partir de algo que alguém colocou já em tom de crítica. Afinal, o hackum já disse, de antemão, que é iniciante na linguagem e achou “muito complicado” fazer a mesma coisa que se faz em outras linguagens (nas quais provavelmente ele já tem mais experiência) do que em Java. Oras, isso não é mais um ataque à linguagem Java sem sequer conhecer como funciona?

Sem contar que o exemplo do hackum foi meio capcioso, já que ele colocou como exemplo de Java um código um pouco mais complexo, e como exemplo de outras códigos menos complexos. Afinal de contas, fica muito mais fácil dizer que C# é mais fácil do que Java se você colocar, como exemplo de C#, uma leitura de arquivos simples contra um CRUD completo em Java (isso vale para qualquer linguagem!!). Não comparemos maçã com banana.

Quanto ao hackum, tenho o seguinte para colocar:

  1. PHP foi feita apenas para sistemas na web. Ponto. Não dá pra comparar corretamente com uma linguagem como Java, que foi feita para um propósito muito mais amplo.
  2. Antes de criticar, veja o que há de mais moderno e veja o que acha. É possível fazer sites com Java utilizando:
    • Play! Framework
    • HTML5 e javascript (sim, sem absolutamente nada de Java no front-end em si)
    • utilizar geradores como o Jboss Forge.
    • e outros…
  3. Um fato: Java não é (mais) uma das linguagens mais amigáveis para se criar sistemas na web. No entanto, são os requisitos não-funcionais que ela atende que ainda fazem a linguagem valer (e muito!) a pena de se colocar em empresas.

[]'s

Disse tudo! O problema maior foi a maneira de dizer e não o que foi dito.

A plataforma Java vale muito a pena. Uma prova simples disso é a quantidade de linguagens que rodam nela (Ruby, Groovy, Scala, Python e por aí vai). Eu nunca fui muito fã da linguagem Java, mas sou fã da plataforma.

A

hackum:
Eu sou apaixonado pelo Java! Eu não estou atacando a linguagem. O objetivo do tópico, era conhecer uma maneira mais fácil de integrar o Java com o HTML, sem ter de usar tags para isso. Eu não programo em outras linguagens, eu programo apenas em Java. Quando eu “brinquei” com o PHP, eu pude ver a diferença de ambas linguagens.

Eu gostaria de por exemplo, como os frameworks, que utilizamos tags, porque não fazer com que chamamos o método e/ou variavel ?

IMHO, a melhor maneira de se fazer isso, hoje, é sem utilizar tag alguma no frontend. HTML5 (com javascript) + CSS3 + REST dá um resultado bem legal :wink:

D

luzales:
drsmachado:
Vão para o quinto dos infernos com isso.
Ô povinho fresco.
Não está contente, sinto dizer-te, o problema não é o java é você.
Ao menos você estudou para saber a diferença entre todos os códigos que está criticando?
“Ah, mas em PHP era fácil assim”. Porra, vai programar em PHP então.
“Ah, mas em ‘C#’, .NET é mais susse”. Cacete, vai programar nesta linguagem.
“Nossa, o drsmachado é estressado”. Não. Só não tenho mais saco para ver tópicos de pessoas medíocres, sem capacidade, que criticam as coisas.

1 - HTML não usa tags?
2 - Todo framework component-based é enrolado para aplicação de CSS. Se você tivesse o mínimo de capacidade, conseguiria entender isso.
3 - Se você fosse tão bom com javascript e html, não precisaria colocar nada de código de qualquer linguagem que fosse. Só com javascript e seus recursos você resolve isso.
4 - Cada linguagem tem uma filosofia, a do java diz que scriptlets, embora funcionais, são aberrações.
5 - Se você está frustrado, vai fazer tricô.

Ah, sinto te dizer, mas, há frameworks e implementações de especificações, como o primefaces e o richfaces, que fazem uso do jQuery para melhorar a aparência dos componentes e há iniciativas como o struts2-jquery-plugin, que disponibiliza tags que customizam e facilitam o uso de jQuery em struts 2.

E, repito, se você tem problemas para resolver esta ou aquela situação com uma determinada linguagem, é por que você é incapacitado nela. Se você realmente domina uma linguagem, não há nada que não possa fazer com ela.

Falou o fodão! Nem todos tem a “sabedoria” que vc tem. Talvez vc nunca foi um iniciante e teve o dom mágico de já nascer sabendo tudo. Sr. Mestre da Programação, se não quer ajudar, não precisa detonar!


Já fui iniciante, da mesma forma como todos.
Agora, eu fui educado de maneira coerente, de forma que as adversidades não são vistas como empecilhos, mas, como etapas que servirão de degraus para que eu alcance uma evolução natural.
Se você não entende uma crítica, não posso fazer nada a respeito. Ignorância é achar que todos devem concordar com sua opinião. Escolhi trabalhar com desenvolvimento para ter que me livrar dos chiliques de pessoas como você e o autor do tópico, quando a mamãe não está por perto e vocês precisam se virar sozinhos, ficam assim.
Mas, já que você é o dono da razão, me dê motivos lógicos para destruir tudo o que existe de java com CSS e javascript e abandonar o barco.

Sócrates, o grego pai da filosofia introduziu uma nova forma de ver o aprendizado. Para aprender é preciso admitir a própria ignorância. Se vocês não são capazes de admitir que não sabem algo, ficarão sempre na mesma escuridão.

Como eu disse, é preciso estudar, conhecer a fundo. Veja o saoj, um dos membros do guj. Ele sempre critica isto ou aquilo do java. Mas ele tem embasamento, tem inciativa. Tanto é que ele colabora e defende o mentawai, um “framework action-based full stack”.

E você, o que tem feito a respeito? Só sabe dizer que quem tem opinião é “fodão” e “arrogante”?

D

warquia:
Colocação mais absurda!, creio que você aprendeu a programar na faculdade, pobres palavras.

drsmachado:
Vão para o quinto dos infernos com isso.
Ô povinho fresco.
Não está contente, sinto dizer-te, o problema não é o java é você.
Ao menos você estudou para saber a diferença entre todos os códigos que está criticando?
“Ah, mas em PHP era fácil assim”. Porra, vai programar em PHP então.
“Ah, mas em ‘C#’, .NET é mais susse”. Cacete, vai programar nesta linguagem.
“Nossa, o drsmachado é estressado”. Não. Só não tenho mais saco para ver tópicos de pessoas medíocres, sem capacidade, que criticam as coisas.

1 - HTML não usa tags?
2 - Todo framework component-based é enrolado para aplicação de CSS. Se você tivesse o mínimo de capacidade, conseguiria entender isso.
3 - Se você fosse tão bom com javascript e html, não precisaria colocar nada de código de qualquer linguagem que fosse. Só com javascript e seus recursos você resolve isso.
4 - Cada linguagem tem uma filosofia, a do java diz que scriptlets, embora funcionais, são aberrações.
5 - Se você está frustrado, vai fazer tricô.

Ah, sinto te dizer, mas, há frameworks e implementações de especificações, como o primefaces e o richfaces, que fazem uso do jQuery para melhorar a aparência dos componentes e há iniciativas como o struts2-jquery-plugin, que disponibiliza tags que customizam e facilitam o uso de jQuery em struts 2.

E, repito, se você tem problemas para resolver esta ou aquela situação com uma determinada linguagem, é por que você é incapacitado nela. Se você realmente domina uma linguagem, não há nada que não possa fazer com ela.


Já está fazendo tricô?
O fato de eu ter opinião e não ter medo de apresentá-la ofende tanto a vocês?
Se a carapuça serviu, problema de vocês.

E sim, aprendi a programar na faculdade, por quê? Só por que existem pessoas incapazes de se dedicar a aprender (pois mesmo um dom precisa ser trabalhado), não significa que não haja quem consiga.
Agora, eu não parei no tempo, não me conformei com o que eu tinha aprendido.
Atualmente, se você ler minha assinatura, verá que estou trabalhando e estudando várias coisas.
E enquanto eu continuar lendo absurdos como este tópico, irei continuar falando o que penso, da forma como eu quiser.
Grosso? Boçal? Mal educado? Pergunte a todos os que já tiveram tópicos resolvidos com minha ajuda e depois venha conversar comigo.

Ser objetivo e sincero é ofender. Mentir e enrolar é ser delicado e boa praça.

Go to hell!

A

drsmachado, já foi dito por aqui que o problema não foi o que foi dito, mas a maneira. Ser objetivo, sincero, ter opinião, são qualidades louváveis, mas a retórica e a sociabilidade também :wink:

D

asaudate:
hackum:
Eu sou apaixonado pelo Java! Eu não estou atacando a linguagem. O objetivo do tópico, era conhecer uma maneira mais fácil de integrar o Java com o HTML, sem ter de usar tags para isso. Eu não programo em outras linguagens, eu programo apenas em Java. Quando eu “brinquei” com o PHP, eu pude ver a diferença de ambas linguagens.

Eu gostaria de por exemplo, como os frameworks, que utilizamos tags, porque não fazer com que chamamos o método e/ou variavel ?

IMHO, a melhor maneira de se fazer isso, hoje, é sem utilizar tag alguma no frontend. HTML5 (com javascript) + CSS3 + REST dá um resultado bem legal ;)


JSTL/EL

<c:forEach  items="${qtdDiasMes}" var="dia" begin="0">  
           <c:out value="${dia}"/>  
    </c:forEach>

JSF:

<h:datatable value="#{bean.colecao}" var="col">
<h:commandButton action="#{bean.metodoQueQueroExecutar}"/>

Struts:

<s:textfield name="valor"/>
<s:submit action="acaoQueQueroExecutar"/>

Mentawai

<mtw:out value="msg" />
<mtw:form action="Hello.hi.mtw" method="post">

Só para ficar nos exemplos básicos.
Onde está a complicação aqui?

D

asaudade, retórica?
Veja a diferença entre a proposta deste tópico e a deste aqui.
Percebe a diferença?
Não que eu concorde 100% com o saoj, mas o cara merece crédito por ter estudado a fundo as estruturas que critica (veja o que ele fala sobre o log4j).
Agora, o guj está virando um CVV (centro de valorização da vida). É gente com depressão, desiludida, triste, sem miguxos…

Antes de cursar a faculdade, eu não tinha muito bem definida uma profissão. Também me ferrava atrás de emprego. Fui vendedor de loja de informática por um dia. Nunca mais voltei por que aquilo não era para mim.
Se java ou programação te deixam frustrado, desiludido, vai fazer outra coisa. O mercado está aí, tem vagas.
Pare de mentir para si mesmo, de enganar-se.
Embora trabalho e tortura descendam do mesmo radical, trabalho deve ser divertido, trazer satisfação.

A

asaudade, retórica?
Veja a diferença entre a proposta deste tópico e a deste aqui.
Percebe a diferença?
Não que eu concorde 100% com o saoj, mas o cara merece crédito por ter estudado a fundo as estruturas que critica (veja o que ele fala sobre o log4j).
Agora, o guj está virando um CVV (centro de valorização da vida). É gente com depressão, desiludida, triste, sem miguxos…

Antes de cursar a faculdade, eu não tinha muito bem definida uma profissão. Também me ferrava atrás de emprego. Fui vendedor de loja de informática por um dia. Nunca mais voltei por que aquilo não era para mim.
Se java ou programação te deixam frustrado, desiludido, vai fazer outra coisa. O mercado está aí, tem vagas.
Pare de mentir para si mesmo, de enganar-se.
Embora trabalho e tortura descendam do mesmo radical, trabalho deve ser divertido, trazer satisfação.

Entendo perfeitamente o que você quer dizer. Eu comecei em TI como analista de suporte, e é por isso que hoje eu sou programador :wink:

Mas também não se deve assumir que o colega não gosta de programação. Ele mesmo já falou que é apaixonado por Java, mas que ainda não entende bem como isso funciona. Eu concordo 100% com você que isso aqui está virando um CVV, até me ausentei uns tempos daqui por causa disso (e também por causa da onda de trolls que apareceram em decorrência).

Mas ambos devemos concordar em duas coisas:

  1. Este tópico está bem diferente daqueles “não tenho amigos”
  2. Percebí que você gosta do estilo do saoj. Pois bem, perceba que nesse tópico que ele citou, ele cutucou fera com vara curta e, mesmo assim, não saiu em quebra pau gratuito como este tópico está prestes a. Percebe a importância da retórica?

[]'s

S

hackum:
Estou entrando no mundo Java para Web. Nunca achei tão dificil programar Java para web assim. Tentei partir para os frameworks, porém, não me ajudou nada! Sempre me vem com as mesmas coisas: TAGS. Quando eu quis fugir das tags, tentei usar o scriptleet, mas fui ignorado, segundo o que me disseram, scriptleets está totalmente defazado.

Vou tentar explicar o que está acontecendo: Além de ser desenvolvedor Java, gosto de usar CSS, e Javascript(JQuery). Quando eu programava para PHP a um bom tempo atrás, eu poderia implementar meus códigos php junto com o HTML. O que faz que eu tenha total controle sobre o CSS e Javascript, ou seja, o meu código, como um todo. Por exemplo, se eu crio um formulário com a tag comum do html, eu consigo aplicar sem problemas o CSS e o JQuery. Mas, com o Java, eu não consigo fazer nada disso! Sempre que eu tenho que chamar um método ou uma variavel de uma classe Java, eu tenho que usar as malditas tags. Veja, eu quero exibir uma lista de informações que eu peguei em uma bd:

<display:table id="data" name="sessionScope.UserForm.employeeList" requestURI="/userAction.do" pagesize="10" >
            <display:column property="id" title="Id" sortable="true"   />
            <display:column property="userName" title="User Name" sortable="true"  />
            <display:column property="emailId" title="Email Id" sortable="true"  />
        </display:table>

(Código retirado da Internet)

Como vou aplicar isso um CSS e um JQuery ?

Esta pegunta só si já mostra que vc não sabe realmente como funciona o CSS e o JQuery.

O CSS e o JQuery utilizam selectores. Estes seletores podem ser baseados em id, class, no nome do tag , nos atributos do tag ou uma combinação destes.
Escrever HTML dinamico com tags é a coisa mais simples do mundo. Todos os tags dinamicos têm atributos para vc dizer qual é o id e/ou a classe de estilo.
Esses valores são escritos no HTML e o browser não sabe a diferença entre esse html e um html estático. Sò que tem que ver na documentação qual é esse atribute, né ?

O seu problema não é java, é falta de base e conceitos de como funcionam as coisas em jsp.
seja produtos uma lista no request, como alguém já escreveu, ficaria assim:

<ul id="products">    
<c:forEach var="p" items="${produtos}" >
         <li>${p.name} (${p.price})</li> 
</c:forEach>
</ul>

Pronto, é quase igual ao PHP só que usando tags como deve ser.
Se quer usar jsp vc tem que aprender a usar a taglib padrão (normalmente chamada por namespace c) e alguma taglib do framework que estiver usando ( ou a displaytag como no seu exemplo)

Se quer realmente entrar nesta, precisa esquecer o php e aprender como deve ser (php não é padrão de nada por isso que é fácil)
Talvez fazer um curso, ou algo assim …

G
hackum:
(...)conhecer uma maneira mais fácil de integrar o Java com o HTML, sem ter de usar tags para isso.(...)
Isso é apenas questão de ter uma melhor compreensão, pegar o jeito da coisa, com a experiência você vai ver que as tags são uma coisa boa. Por exemplo, você realmente acha isso
<ul>
<%for (String n : nomes) {%>
<li><%=n%></li>
<%}%>
</ul>
mais elegante e simples do que isso?
<ul>
<c:foreach items="${nomes}" var="n">
<li>${n}</li>
</c:foreach>
</ul>

Acho que você está apenas naquela fase de resistência diante do desconhecido :D

E sobre sua outra preocupação: o uso de tags não vai de forma nenhuma te limitar quanto ao uso de CSS e Javascript. A displaytag por exemplo tem opções para que se customize quase tudo, é apenas questão de estudar a documentação. SE o que você precisa é algo muito específico, sempre tem a opção de escrever a tabela manualmente, exatamente como vc faria em php só que mais bonito por causa das TAGS.

<table atributosTotalmenteForaDoPadrao="xxxxx">
<c:foreach items="${pessoas}" var="p">
   <tr>
       <td atributosTotalmenteForaDoPadrao="yyyy">
           ${p.nome}
       </td>
       <td atributosTotalmenteForaDoPadrao="yyyy">
           ${p.nome}
       </td>
</c:foreach>
</table>

E como já disseram: além disso hoje existem outras técnicas, a página não precisa de nada executando no lado server... pode criar HTML puro e fazer a interação com server usando javascript.

H

asaudade, retórica?
Veja a diferença entre a proposta deste tópico e a deste aqui.
Percebe a diferença?
Não que eu concorde 100% com o saoj, mas o cara merece crédito por ter estudado a fundo as estruturas que critica (veja o que ele fala sobre o log4j).
Agora, o guj está virando um CVV (centro de valorização da vida). É gente com depressão, desiludida, triste, sem miguxos…

Antes de cursar a faculdade, eu não tinha muito bem definida uma profissão. Também me ferrava atrás de emprego. Fui vendedor de loja de informática por um dia. Nunca mais voltei por que aquilo não era para mim.
Se java ou programação te deixam frustrado, desiludido, vai fazer outra coisa. O mercado está aí, tem vagas.
Pare de mentir para si mesmo, de enganar-se.
Embora trabalho e tortura descendam do mesmo radical, trabalho deve ser divertido, trazer satisfação.

Você está certo, concordo com você. Só poderia de início ter orientado o cara a pesquisar mais antes de fazer qualquer crítica, ter colocado o link do outro tópico para que ele comparasse e depois os exemplos de como resolver … você fez tudo isso depois, depois que reclamaram, podia ter feito de início não? E insultos não cabem em qualquer situação

V

Eu acho tosco esse ódio a scriptlet. Não vejo nada d+ em uso de scriptlet contanto que não tenha logica de negócio nele

Mas em Java é horrível usá-los pq tem que ficar fazendo coisas do tipo:

(List) request.getAttribute(“users”);

E ainda falta dar os imports no List e User :stuck_out_tongue:

Ainda bem que inventaram EL e aquelas tags simples que não precisam de classe Java por trás

Em linguagens dinâmicas como PHP e Ruby não vejo problema nenhum em usar scriptlets. O único motivo pelo qual não usuaria seria se eu estiver construindo algum software com possibilidade de temas customizáveis por terceiros. Obviamente você não vai querer que um tema de terceiro tenha possibilidade de invocar qualquer método seu e poder quebrar o software. É aí que surge a utilidade das engines de template

T

Tem gente que ainda usa Java pra fazer web?

Cada dia eu aprendo uma coisa nova nessa fórum…

S

tionil:
Tem gente que ainda usa Java pra fazer web?

Cada dia eu aprendo uma coisa nova nessa fórum…

JSF é tudo menos simples.

Se quer algo simples e prazerozo em Java para a web vc precisa experimentar algum framework FULL-STACK.

Opções:

V
gomesrod:
Por exemplo, você realmente acha isso
<ul>
<%for (String n : nomes) {%>
<li><%=n%></li>
<%}%>
</ul>
mais elegante e simples do que isso?
<ul>
<c:foreach items="${nomes}" var="n">
<li>${n}</li>
</c:foreach>
</ul>

Prefiro bem mais a primeira opção, qualquer desenvolvedor vai saber como fazer ela. A segunda exige a pessoa a ter que aprender uma tag nova pra cada operação

Agora imagina que ele tenha que imprimir uma classe a depender se o índice é ímpar ou par. Como faz isso? Lá vai o cara ter que ir no Google pra descobrir que tem que declarar um atributo varStatus="status" na tag e usar ${status.index} pra pegar o índice. Se fosse Java qualquer um já saberia

Agora imagina que "n" é um objeto Java, e você precisa imprimir o resultado de um método que não é getter ou que recebe um parâmetro. Lá vai vc ter q escrever uma função EL customizada. Ouch!

G

Esse eu não acho que seja um bom motivo para se fazer tal escolha… qualquer que seja a ferramenta escolhida (seja em Java ou não), aprender o seu funcionamento correto faz parte do processo.

victorcosta:

Agora imagina que “n” é um objeto Java, e você precisa imprimir o resultado de um método que não é getter ou que recebe um parâmetro. Lá vai vc ter q escrever uma função EL customizada. Ouch!

Aqui sim, cutucou bem na ferida da EL ! haha

D

asaudade, retórica?
Veja a diferença entre a proposta deste tópico e a deste aqui.
Percebe a diferença?
Não que eu concorde 100% com o saoj, mas o cara merece crédito por ter estudado a fundo as estruturas que critica (veja o que ele fala sobre o log4j).
Agora, o guj está virando um CVV (centro de valorização da vida). É gente com depressão, desiludida, triste, sem miguxos…

Antes de cursar a faculdade, eu não tinha muito bem definida uma profissão. Também me ferrava atrás de emprego. Fui vendedor de loja de informática por um dia. Nunca mais voltei por que aquilo não era para mim.
Se java ou programação te deixam frustrado, desiludido, vai fazer outra coisa. O mercado está aí, tem vagas.
Pare de mentir para si mesmo, de enganar-se.
Embora trabalho e tortura descendam do mesmo radical, trabalho deve ser divertido, trazer satisfação.

Você está certo, concordo com você. Só poderia de início ter orientado o cara a pesquisar mais antes de fazer qualquer crítica, ter colocado o link do outro tópico para que ele comparasse e depois os exemplos de como resolver … você fez tudo isso depois, depois que reclamaram, podia ter feito de início não? E insultos não cabem em qualquer situação
Na verdade, não deveria ter colocado nada.
Qualquer apostilinha de java web, por mais furreca que seja permite que o sujeito perceba que ele está sendo um fresco e que esse xilique é falta do que fazer.
Colocar argumentos? Para quê? A maioria dos usuários do guj, assim como você e o autor do tópico, só entram em discussões quando trolls fazem flameware. Que falsa moral é essa?
Está lá nas regras do fórum “pesquise antes de postar, quando postar, coloque a fonte”. Quantos tópicos são abertos sem que o autor sequer saiba perguntar.
“Façam pra mim”, “to com dúvida em como abro o eclipse”, “sou iniciante e não sei criar um método main”.
Leia. Pesquise. Vá atrás.
Garanto que se for para procurar pornografia ou qualquer outra coisa todo mundo sabe. Agora, pesquisar para resolver exercícios da faculdade? Para quê, se os trouxas do guj resolvem.
Java web é difícil? É. É culpa da linguagem? Não. Você já tentou programar em assembly? Já tentou fazer o que o Lucas ou o Neymar fazem jogando bola? Ou o que milhares de brasileiros fazem na construção civil?
Isso é difícil. Reclamar de barriga cheia é moleza.

Eu não preciso provar nada a ninguém. Nem a maioria dos que estão aqui, perdendo tempo para responder crianças mimadas, que quando não tem o que querem, se jogam no chão e esperneiam.
Veja o exemplo do jakefrog, trabalha durante o dia, dá aulas a noite e estuda para as certificações. E ainda mantém um baita blog e responde o guj.
E o ViniGodoy? Acha que ele chegou onde chegou por ficar reclamando que java web não deixa ele fazer fru fruzinhos com CSS? Que os ponteiros do C estão deixando ele tixtis?

O que este tópico reflete (e, ao contrário do que alguém falou, que ele é diferente desses “não tenho miguxos”) é um problema crônico do brasileiro: “se ninguém foi capaz de fazer, eu que não me meto a besta”. Filosofia pura.
Rasmus Lerdorf não queria usar as tecnologias da época, muito complexas, para criar páginas pessoais. Ele ficou reclamando? Não, criou o PHP.
Yukihiro ?matz? Matsumoto gostava de Perl, Smalltalk, Eiffel, ADA e Lisp e resolveu juntar o que havia de melhor em cada uma delas em uma nova linguagem, cuja proposta é facilitar a escrita de sistemas. Resultado? Ruby.
E para não dizerem que só cito gringos, Alberto Santos Dummont estava cansado de pegar o seu relógio no bolso do paletó. Criou o relógio de pulso. E o avião.

Parem de reclamar, levantem as bundas das cadeiras e vão atrás do que vocês acham que vale a pena.
Se java e seus frameworks são difíceis demais, criem algo que seja fácil.
Agora, saibam que isso significa estudo e dedicação. E esse estudo, invariavelmente, precisará incluir java. Como saber o que não fazer, sem conhecer o que está errado?

Quanto a mim, volto a repetir, tenho garantido o direito de expor o que penso, pela constituição federal. Vocês tem o direito de retrucar e ignorar. Fiquem a vontade.

V

Os ponteiros do C não me deixam trixti, mas continuar vendo tópicos de “decepção”, sim. Também me questiono quando o pessoal vai cair na real e passar a encarar tecnologias como ferramenta de verdade.

Em todo caso, acho que o assunto aqui se inflamou mais do que deveria… Hora de tranca-lo, não?

Criado 8 de agosto de 2012
Ultima resposta 8 de ago. de 2012
Respostas 38
Participantes 21