sexta-feira, 16 de maio de 2008

MyJavaServer, um ambiente de desenvolvimento

Desenvolvedores Java Enterprise Edition (JEE) encontraram no projeto MyJavaServer (MJS) um local para hospedar aplicações WEB. O MSJ foi lançado em 1999 com o nome de “mycgiserver”, aberto a varias tecnologias. Em 2001 o projeto adotou o nome atual, alem disso passou a oferecer suporte apenas as tecnologias JEE.

O projeto MJS atualmente conta com mais de 54.000 desenvolvedores ativos. O MJS oferece uma abordagem pratica para o desenvolvimento e a implantação de aplicações JEE. Para fazer uso dessa infra estrutura basta cadastrar-se no site (www.myjavaserver.com).

Como o MJS é um ambiente aberto esta sujeito a excessos no seu uso. Para dificultar o uso de forma inadequada é exigido no site que seja respondido um desafio simples que deve demonstrar a sua capacidade Java. Esse desafio vai requer algum conhecimento da linguagem de programação Java.

No desafio atual deve ser implementado o método public String getHandler(String [] config, String requestUri) da classe HandlerFactory o parâmetro config é um array que contem um padrões e manipuladores. Dois valores consecutivos formam um par padrão e manipulador. O parâmetro requestUri representa a chamada requisitada. O método de retornar o manipulador correspondente ao padrão que esta na chamada (requestUri). Caso a requisição não encontre nenhum padrão deve ser devolvido um “código” que é informado na questão.



Exemplo de entrada:
String[] config: { "/", "MainServlet", "/nav", "NavigationServlet" }
String requestUri: "/ nav / test"
Resultado correto: "NavigationServlet"
Verifica que se a requisição for para /nav/test.nav o padrão correto é o /nav que por sua vez esta ligado ao manipulador NavigationServlet.

Não é o intuito desse artigo divulgar a solução desafio. A idéia aqui é de difundir o projeto MJS. Tente resolver o desafio sozinho antes de olhar a solução. Estamos a disposição para ajudar tirar duvidas sobre o desafio e ajudar no que for possível.


Solução:




public class HandlerFactory
{
public String getHandler(String[] config, String requestUri)
{
String result="";
String temp="";
for(int i=0;itemp.length())
{
result=config[i+1];
temp=config[i];
}
}
}
if(!result.equals(""))
return result;
else
return "sQ95hl0"; //codigo que voce vai encontrar na pagina
}
}




[]'s

Nenhum comentário:

Postar um comentário