Erro no Primeiro Projeto do Use a Cabeça JSP & Servlets

9 respostas
GabrielCardelli

Erro: http://img182.yfrog.com/img182/6350/erroe.jpg

Alguem pode ajudar...? diz que não encontra mais eu dou os imports e talz... o que será ? vou postar os codigos

Esse ta na pasta src/com/example/web

package com.example.web;
import com.example.model.*;
import javax.servlet.*;
import javax.servlet.http.*;
import java.io.*;
import java.util.*;
public class BeerSelect extends HttpServlet
{
       public void doPost(HttpServletRequest request, HttpServletResponse response)throws IOException, ServletException
       {
              response.setContentType("text/html");
              PrintWriter out = response.getWriter();
              out.println("Beer Selection Advice <br>");
              String c = request.getParameter("color");

	      BeerExpert be = new BeerExpert();
	      List result = be.getBrands(c);
              out.println("<br> Got beer color " + c);


		Iterator it = result.iterator();
		while(it.hasNext())
		{
			out.println("<br> try: " + it.next() );
		}


		

		
       }

Esse ta na pasta src/com/example/model

package com.example.model;
import java.util.*;

public class BeerExpert
{
       
	public List getBrands(String color)
	{

		List brands = new ArrayList();

		if(color.equals("amber"))
		{
			brands.add("jack amber");
			brands.add("Red Moose");
	
		}else {
			brands.add ("JAIL PALE ALE");
			brands.add("Gout Stout");
		
		}
			return(brands);		
		
	}

Ta = ao livro porque o erro? não consigo chamar um objeto dentro do servlets da erro no pacote sei lá alguem pode ajudar?
OBRIGADO DESDE JÁ

9 Respostas

GabrielCardelli

coloquei pacote default e rola o msm erro alguem pode ajudar?

Nykolas_Lima

precisa ter os .jar da biblioteca de servlets.

ve se vc tem ele…

se tiver ve se ta no claspath certo

GabrielCardelli

Mano consegui só pelo Eclipse !! NA mãoo ta foda!

claudneysessa

Depois de apanha bastante ei consegui resolver este problema…

Primeiramente eu devo estar na pasta raiz do meu projeto, no meu caso:

c:\TesteJava&gt;

agora vc tem que compilar a classe BeerExpert.java que não possui dependencias, e ela tem que ser compilada primeiro pos a classe BeerSelect.java a ultiliza, e deve encontra-la na hora da compilação

javac -d classes src/com/example/model/BeerExpert.java

depois de compila-la ai ssim vamos compilar a classe BeerSelect.java

javac -cp "c:\TesteJava\beerV1\src;C:\Arquivos de programas\Apache Software Foundation\Tomcat 6.0\lib\servlet-api.jar;classes:." -d classes src/com/example/web/BeerSelect.java

desta forma formamos nosso classpath com as pastas

Assim fazemos com que a classe BeerSelect.class aponte para a classe BeerExpert.class

0 pedaço do comando -d classes faz com que a pasta de destino seja a pasta classes que se encontra no raiz do seu projeto, no meu caso;\

c:\TesteJava\beerV1\classes

Bom espero ter ajudado…

R

Bom Dia Galera,

Estou com problema na continuação desse exercicio…

Tenho que criar uma classe para chamar um modelo chamado BeerExpert.

O codigo do modelo eh esse:

package com.example.model;
import java.util.*;

public class BeerExpert

(

public List getBrands(String color)

{

List brands = new Arraylist();

if (color.equals(amber))

{

brands.add(Jack Amber);

brands.add(Red Moose);

}

else

{

brands.add(Jail Pale Ale);

brands.add(Gout Stout);

}

returns(brands);

}

}

Eu Devo criar a classe no DD certo? (que no meu caso se chama web.xml)
Eu modifiquei o arquivo e o mesmo ficou assim:

<servlet> Ch3 Beer
`com.example.web.BeerSelect

Ch3 Beer `/SelectBeer.do

<servlet> Ch4 Beer
`com.example.model.BeerExpert

Ch4 Beer `/SelectBeer.do

O erro que aparece quando mando compilar o arquivo BeerExpert eh o seguinte:

C:\MyProjects\BeerV1>javac -classpath C:\Tomcat\common\lib\servlet-api.jar;class
es;. -d classes src\com\example\model\BeerExpert.java
src\com\example\model\BeerExpert.java:4: ‘{’ expected
public class BeerExpert
^
1 error

O que eu estou fazendo de errado?

Agradeço a ajuda.

Nykolas_Lima

riczanca89:
Bom Dia Galera,

Estou com problema na continuação desse exercicio…

Tenho que criar uma classe para chamar um modelo chamado BeerExpert.

O codigo do modelo eh esse:

package com.example.model;
import java.util.*;

public class BeerExpert

(

public List getBrands(String color)

{

List brands = new Arraylist();

if (color.equals(amber))

{

brands.add(Jack Amber);

brands.add(Red Moose);

}

else

{

brands.add(Jail Pale Ale);

brands.add(Gout Stout);

}

returns(brands);

}

}

Eu Devo criar a classe no DD certo? (que no meu caso se chama web.xml)
Eu modifiquei o arquivo e o mesmo ficou assim:

<servlet> Ch3 Beer
`com.example.web.BeerSelect

Ch3 Beer `/SelectBeer.do

<servlet> Ch4 Beer
`com.example.model.BeerExpert

Ch4 Beer `/SelectBeer.do

O erro que aparece quando mando compilar o arquivo BeerExpert eh o seguinte:

C:\MyProjects\BeerV1>javac -classpath C:\Tomcat\common\lib\servlet-api.jar;class
es;. -d classes src\com\example\model\BeerExpert.java
src\com\example\model\BeerExpert.java:4: ‘{’ expected
public class BeerExpert
^
1 error

O que eu estou fazendo de errado?

Agradeço a ajuda.

Você colocou parentes ao invés de chaves

O correto é:

public class BeerExpert
{

Troca o parentes pela chave

R

Vlw Frango,

Troquei o Parenteses mas ainda continuo com o Erro.

quando compilo aparecem os seguintes erros:

C:\MyProjects\BeerV1>javac -classpath c:\tomcat\common\lib\servlet-api.jar;class
es;. -d classes src\com\example\model\beerexpert.java
src\com\example\model\beerexpert.java:9: cannot find symbol
symbol  : class Arraylist
location: class com.example.model.BeerExpert
              List brands = new Arraylist();
                                ^
src\com\example\model\beerexpert.java:20: cannot find symbol
symbol  : method returns(java.util.List)
location: class com.example.model.BeerExpert
              returns(brands);
              ^
Note: src\com\example\model\beerexpert.java uses unchecked or unsafe operations.

Note: Recompile with -Xlint:unchecked for details.
2 errors
R

Con segui arrumar os erros,

Mas agora está aparecendo o seguinte erro ao enviar os dados da pagina html:

HTTP Status 404 - Servlet Ch4 Beer is not available

type Status report

message Servlet Ch4 Beer is not available

description The requested resource (Servlet Ch4 Beer is not available) is not available.
Apache Tomcat/5.5.28

O meu codigo da pagina web.xml eh o seguinte:

<web-app xmlns="http://java.sun.com/xml/ns/j2ee" 
	xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" 
	xsi:schemaLocation="http://java.sun.com/xml/ns/j2ee/web-app_2_4.xsd" 
	version="2.4">


`<servlet>
	`<servlet-name> Ch3 Beer </servlet-name>
	`<servlet-class>com.example.web.BeerSelect</servlet-class>
</servlet>


<servlet-mapping>
	<servlet-name>Ch3 Beer</servlet-name>
	`<url-pattern>/SelectBeer.do</url-pattern>


</servlet-mapping>


`<servlet>
	`<servlet-name>Ch4 Beer </servlet-name>
	`<servlet-class>com.example.model.BeerExpert</servlet-class>
</servlet>


<servlet-mapping>
	<servlet-name>Ch4 Beer</servlet-name>
	`<url-pattern>/SelectBeer.do</url-pattern>


</servlet-mapping>

</web-app>
Nykolas_Lima

Um tem espaço antes de depois do nome e o outro não tem.

Coloca os dois nomes iguais.

Criado 19 de julho de 2009
Ultima resposta 11 de jan. de 2010
Respostas 9
Participantes 4