| Autor |
Mensagem |
|
|
o que eu fiz foi deixar a thread num cache (ehcache) e, ao requisitar novamente o servico, verifica o cache, verifica se existe uma thread alive lá, e dá um join nela até terminar o processo.
;P
|
 |
|
|
Pessoal, possuo uma situação onde os usuários solicitam relatórios via webservices RESTFul.
O que eu queria fazer.. quando ele solicitasse um relatório no formato PDF, abrisse uma thread em background que começasse a gerar o relatório no formato EXCEL e JSON e guardasse no filesystem para que, caso o usuário solicitasse nestes formatos já estaria pronto.
Motivação disso: a demora em escrever em arquivo, assim, agilizaria bastante. E caso ele não solicitasse os outros formatos, existe um JOB que limpa os arquivos, então isso não seria um problema.
Problema:
Como estou num protocolo sem estado e assincrono( http) como posso saber que uma thread iniciada na requisição X ja estaria pronta na requisição Y ? Exemplo:
1. Usuário faz a chamada pela primeira vez ao relatório
2. inicia a geracao do relatorio no formato desejado (e em outras threads inicia nos outros formatos)
3. retorna assim qeu o formato desejado estiver pronto
4. usuario solicita outro formato... : como saber que a thread terminou a geracao do outro formato? Ok, verificando a existencia do arquivo mas... e se ainda nao terminou.. como aguardar terminar? while true não vejo como a melhor solucao....
Obrigado.
|
 |
|
|
Amigos,
Eu acreditava que, para mudar o locale (para que a internacionalização faça efeito em uma aplicação web) bastasse apenas mudar a linguagem do Browser, mas não é isso que está acontecendo. Estou tendo que mudar a linguagem de todo sistema operacional.
Alguém pode confirmar se é isso mesmo?
Abraço.
|
 |
|
|
Pessoal, como faço para configurar o tomcat para determinar uma aplicação sendo a RAIZ de tudo? por ex.. abrir a sua aplicação, quando o usuário acessar: localhost:8080 ?
Obrigado!
|
 |
|
|
Senhores, achei este código:
La duvida:
Pq não apenas:
Algum tipo de segurança no cache? (E se for, realmente é responsabilidade do controller responder pela imutalidade da lista?)
|
 |
|
|
Pessoal, sabemos que há uma certa infra para testar o banco de dados (configuração que muda de servidor para servidor, dados podem mudar tambem, transacoes sao dificeis de testar e devem independentemente, serem removidas ao fim do teste, etc..), assim eu pergunto: quando devemos testar com dados de um DB nossos unit tests?
obrigadoo
|
 |
|
|
Pessoal, considerando o uso de um pool de conexões (num dataSource), o gerenciamento do ciclo de vida desta deve ser feita de forma programatica? (open, close, etc.) ? Considerando um ambiente não web, não tem algum framework que poderia controlar pra mim? Tipo o spring, nao faz isso? AspectJ?
Outra duvida.. por que, preciso fazer um beginTransaction (iniciar uma TRANSACAO) quando faço uma consulta ? (find simples) - sendo que isso não é uma transacao.. nao precisa de commit.. pq ele me obriga a fazer isso pra funcionar ? (senao dah "not active transaction..")
valeu pessoal
|
 |
|
|
Pessoal,
suponhamos que eu tenha uma shared library, Teste.jar
E dois .war´s que a utilizam.
Esta biblioteca é compartilhada apenas por ser unica e cada app que a utiliza carrega com um classloader.. ou é carregado apenas um classloader e as aplicacoes utilizam este?
Tks
|
 |
|
|
Pessoal, boa noite..
Estou com uma dúvida de design da minha aplicação:
- possuo uma classe com atributos que são constituidos (cada um) por consultas complexas que envolvem mais de uma tabela no banco de dados. Logo, esta classe é transiente. Não há uma tabela para ela. Logo, gostaria de saber, qual o melhor "approach" a se tomar para sua utilização, há alguma "mágica" com hibernate/jpa ou eu mesmo devo controlar o Fetch dela?
Explico...
Onde eu seto este "dadoProvidoPorQueryComplexa" ? Já me falaram para não passar uma instância da Session/EntityManager dentro desta classe, então, como faço?
Crio um repositório pra ela, que faz todos os respectivos SETS nela?
?
Obrigado desde já.
|
 |
|
|
sergiotaborda wrote:
MrDataFlex wrote:Boa noite senhores,
Estou fazendo o design de uma aplicação, estou tendendo ao DDD. Esta aplicação, possui uma classe de dominio, meramente ilustrativa "Empresa", supomos também que esta classe Empresa possui três campos:
funcionarios
clientes
acionistas
Digamos que, cada um destes campos é provido por uma TIER diferente, exemplo:
funcionarios = webservice
clientes = Banco de dados
acionistas = arquivo
Então, tenho minha interface EmpresaRepository:
Logo, minha classe Empresa, receberia uma instancia de uma implementacao de repositorio pelo construtor, e teria seus getters invocando estes métodos... (lazy strategy)
dúvida:
É errado eu implementar esta interface "usando" uma classe só? Por exemplo, um método faria chamada a um webservice enquanto outro a um banco de dados.. isso me parece um tanto estranho (não muiito coeso a nivel de implementacao), existe uma maneira mais elegante?
Não use cores dessa forma.
O seu pensamento está correto. O repositorio irá comunicar com 3 diferentes serviços de aplicação para responder aqueles métodos.
Repositorio não é uma interface. Vc cria um objeto EmpresaRepositorio. Apenas um. Esse objeto recebe implementações de três serviços
que mediam essas três formas de comunicação/dados DO ponto de vista do objeto repositorio ele não sabe onde os dados estão.
A unica coisa errada na sua estrutura é colocar o repositorio sendo usado pela entidade empresa. Não faça isso.
Sergio, obrigado pela resposta. Deixe-me entender. Pq não programo voltado a interface neste caso? E se eu não colocar a responsabilidade de invocar dentro do objeto empresa, terei que fazer algo como:
para todos os atributos.. sendo que eu poderia controlar isso por demanda dentro do objeto.. tem um approach melhor?
Teria como representar em draft code a sua idéia ?
Valeu!
|
 |
|
|
Boa noite senhores,
Estou fazendo o design de uma aplicação, estou tendendo ao DDD. Esta aplicação, possui uma classe de dominio, meramente ilustrativa "Empresa", supomos também que esta classe Empresa possui três campos:
funcionarios
clientes
acionistas
Digamos que, cada um destes campos é provido por uma TIER diferente, exemplo:
funcionarios = webservice
clientes = Banco de dados
acionistas = arquivo
Então, tenho minha interface EmpresaRepository:
Logo, minha classe Empresa, receberia uma instancia de uma implementacao de repositorio pelo construtor, e teria seus getters invocando estes métodos... (lazy strategy)
dúvida:
É errado eu implementar esta interface "usando" uma classe só? Por exemplo, um método faria chamada a um webservice enquanto outro a um banco de dados.. isso me parece um tanto estranho (não muiito coeso a nivel de implementacao), existe uma maneira mais elegante?
|
 |
|
|
valeu amigo, e o projection?
A proposito, e pq nao usar o "Expression.or e and" no lugar deles entao ?
|
 |
|
|
Se tratando da api Criteria.
Titulo auto explicativo
Obrigado a todos.
|
 |
|
|
putz, se um Senior nao sabe qnt vale sua hora... não eh senior!!!
|
 |
|
|
Felagund wrote:
MrDataFlex wrote:
dohko wrote:
Empresa 2 -> Prova de 4 horas com 3 questões. Questão 1 - Criar um algoritmo de triangulo de pascal ate determinado ponto passado como parametro. Questão 2 - Criar um algoritmo que escreva valores monetário em extenso R$ 1 até $ 1.000000,00 (ex: R$100,00 (cem reais), R$1520,20 (um mil , quinhentos e vinte reais e vinte centavos) - Questão 3 - Criar um dominio com auto relacionamentos e tratar os objetos com recursividade (nao me lembro mto bem como era)
SEi qual empresa é esta. Fiz pela catho esta prova. Fiz as questões 1 e 3, e não deu termo de terminar a 2. O engraçado que na entrevista o "arquiteto" da empresa me perguntou o que era "póling" em arquiteturas EJB, falei que não conhecia isso. Foi a unica questão das 456465 que me perguntaram que eu não sabia. (obviamente, pq ele se referia a POOLING (puling)).
auauhahuahuuha, eu tive que rir nessa, se me perguntassem por póling tbm não ia saber responder não auhahuuhauha.
O pior que fui sacar o que ele queria depois que tinha saido de lá. A proposito, sai de lá tudo certo e tal, falaram que eu era apto para a vaga. Uma semana depois a mulher da catho me liga, falando que nao tinha rolado, pois eu nao tinha perfil de java avançado que eles queriam. Tive que rir, mas tudo bem, acontece...
|
 |
|
|
|
|