| Autor |
Mensagem |
|
|
Em primeiro lugar, se o seu objetivo não é aprender CORBA, não use CORBA. É um pé no saco.
Os seus paus de compilação acontecem porque a sua helloRef, que é uma HelloServant, não é uma instância de org.omg.CORBA.Object.
Na verdade, vc não passa o Servant pra Orb. Vc cria um servant, depois um proxy pra ele, e com esse proxy é que vc vai fazer rebind() pra conseguir uma refrência.
Não é mágica... eu lembro que o tutorial de corba da OMG é mais facinho de entender, mas ainda assim...
Boa Sorte!
|
 |
|
|
Cara.. eu sei que tem um pacote chamado JavaSound, com tutoriais e tudo, que vc pode dar uma olhada.
Mas a princípio, streams são read-once. O que vc pode fazer é chamar o método reset() no seu AudioInputStream quando terminar de tocar o som.
Digo pra fazer isso quando terminar pq se fizer no começo, vc vai ter que trabalhar com um possível atraso decorrente do reposicionamento do stream.
boa sorte!
Tiago.
|
 |
|
|
Eu quero propor aqui que esse pessoal que tá a fim de ajudar o site seja aproveitado. Já posso sugerir até uma primeira tarefa: ampliar o FAQ do GUJ.
Aqui nos fóruns aparecem muitas perguntas recorrentes, porque o site é novo, e também pr há muitos iniciantes. Eu sei que olhar um FAQ é meio sacal, mas tem muita coisa aqui que aparece nos fóruns e poderia estar no FAQ.
Tem alguém responsável pelo FAQ, mesmo que indiretamente? Será que era bom ter? Eu nunca cuidei de um faq, nem tenho idéia de qual é o padrão de acesso a ele... mas acho que pode ser muito interessante pra quem usa sempre saber que o faq pode ter sempre novidades...
por enquanto é isso! Aquelão!!
|
 |
|
|
As classes do java.util.* são muito úteis principalmente pq lidam com as pentelhações pra vc. Mas vc tem que ter mais "preguiça" na hora de bolar o código: quanto mais preguiça de escrever vc tiver, mais tempo vc ficará pensando nele, e descobrirá alguma forma "4-linhas" pra fazer aquilo.
Quando a gente lida com SQL, a parte que lê do banco fica grande mesmo, não tem jeito. Mas uma vez livre das classes do java.sql, vc pode brincar.
O seu Vector não sabe qual elemento é de cada tipo. Mas você sabe!
Bom... primeiro vc guardou um inteiro, depois um double, depois um string. Hmmmm...
Se vc não garante ordem, nao use uma lista (classes que implementam java.util.List). Use um mapa (classes que implementam java.util.Map): como vc não tem ordem na collection mas precisa de ordem quando for usar os dados, então vc tem que identificar os objetos de alguma forma.
Aqui no trampo a gente usa bastante, pra ler do banco de dados, combinações de List e Map, sendo que cada registro é um mapa. Um exemplo simples é assim:
Como muito bem citou o Rafael Steil, evite Vector. Aliás, evite declarar uma variável diretamente pela classe quando há uma interface pra ela. Acima, usei uma variável com Map pra guardar um HashMap(); Se eu depois quiser mudar de mapa, eu vou ter certeza de que não usei alguma coisa exclusiva do HasmMap que outros mapas não possuem.
O caso do Vector é classico: o método getElementAt(int) só existe pq já estava antes das collections, e outras listas usam o método get(int). Dêem uma olhada no javadoc.
Putz grila, falei mais que a boca!!
|
 |
|
|
Hehehe... é meio chato, mas não é difícil. O Jasper trabalha com XML...
Acho que o quick start é pelo JasperEdit. Tem um wizard pra vc inventar uma primeira query, vc dá a query e ele gera o report pra vc.
a segunda coisa a tentar é realmente brincar com o Designer. Vc pode colocar a query lá, conectar com o BD direto, vai testando os botões todos.
Abaixo segue um pedaço do servlet que envia o PDF ao usuário:
|
 |
|
|
No IME-USP, espero que só até dezembro (daí eu me formo).
Eu tb to fazendo trabalho de formatura, na direção oposta ao CORBA. Separamos a ORB em duas partes, um servidor de nomes e um broker propriamente dito. Daí colocamos o servidor como sendo único para um "Espaço Global de Objetos Distribuídos". Por enquanto não tem busca, mas já existe um aplicativozinho utilizável no sourceforge.
Eu e meu colega de TCC (um caso raro de TCC em dupla) sempre achamos que CORBA requer muitos passos pra compartilhar um objeto, e que esse negócio de _narrow() não tá com nada.
Em Java vc tem introspeção, interfaces, um monte de coisas úteis... bom, olha lá se vc tiver interesse:
http://shob.sourceforge.net
Até o começo de dezembro vai ter uma página decente, com tutorial, javadoc, descrição da arquitetura e uma seção de downloads. Daí eu posto aqui no GUJ direitinho, não pra fazer propaganda, mas pra incentivar o pessoal a distribuir seus programas...
Falouz
|
 |
|
|
Ueba!!
Eu uso o JasperReports pra fazer relatórios em PDF. A parte que me interessa muito é justamente o PDF, por isso não sei se ele te serve.
Pra quem interessar, vc pode encontrar no Sourceforge os 3 aplicativos que se complementam:
JasperReports - gera os PDFs, usando o iText.
JasperEdit - é pra editar o XML, mais um progz que usa o sintax highlighter do Jedit. Mas é bem ruinzinho, a parte que importa é o preview.
JasperDesign - esse é um projeto que ainda está engatinhando, mas já dá pra criar um primeiro layout do seu relatório. A parte legal é que vc dá a query, e ele divide o espaço para cada coluna.
O bom do PDF é que as páginas impressas não cortam as linhas no meio, o que pode acontecer com uma saída HTML.
|
 |
|
|
Ah, legal... eu tb só usei CORBA na facul... aliás, a ORB que eu usei era aquela JacORB, que não funcionava com JDK 1.4...
Vc tá usando Java pra fazer seu trabalho??
|
 |
|
|
Aqui vai uma dica 2 em 1: se vc quer ver Metadados em ação, bem como outras funcionalidades do JDBC, dê uma olhada no Squirrel, que é open source e pode ser baixado do sourceforge.
http://squirrel-sql.sourceforge.net
Além disso, ele é um cliente SQL que vc pode usar pra mexer no seu banco, mais usável que a maioria dos frontends por aí, acessa os bds pela rede, e vc pode acoplar até o plugin de colorir sintaxe do Jedit.
Falouz,
Tiago.
|
 |
|
|
Olá, permita-me a curiosidade... vc faz alguma coisa em CORBA para uso não-comercial?? O quê??
Falouz
|
 |
|
|
Aliás, o pacote do jakarta que mexe com o Excel chama-se HSSF:
Horrible SpreadSheet Format
Pra vc ter uma idéia de como deve ser nojento... : )
Falouz!!
|
 |
|
|
Galvim, a esta altura da evolução da computação, vc deve suspeitar de tudo o que é muito difícil ou muito demorado de fazer.
Não sei qual é o poder de negociação que vc tem na sua empresa, mas em termos de iterface homem-máquina, um ComboBox de 200 itens não serve. Muito mais interessante é um campo de texto onde o cara digita os primeiros caracteres (se ele consegue achar uma entrada numa lista com 200 itens, ele sabe o começo do nome) e o combo-box aparece como auxiliar no momento que as opções diminuem a um nível aceitável. Se aceitável, no seu caso, significar 200 entradas, eles já vão ficar bem felizes. Eu chutaria que 10% do total é uma quantidade aceitável para um Combo.
Mas uma vez que vc quer mesmo é um JComboBox que faz carga parcial dos dados, vc pode implementar um JComboBoxModel que faça a carga parcial. Pra ativar a mudança de janela (a janela que "deixa ver" só uma parte dos dados), vc quer ouvir o Scroll. Pensa no seu código já implementado, e rodando... o usuário arrastando, confiante, a barrinha pra baixo... até onde ele vai para acontecer um Poltergeist??
Poltergeists são fenômenos inesperados num programa que só podem ser atribuídos a uma influência sobrenatural, já que a ação do usuário nada tem a ver com eles.
Como vc vai explicar pra quem tá usando? Vc quer que a barrinha desca proporcionalmente ao TODO dos dados, mas que a lista só mostre UMA PARTE deles, certo? Vai fundo... Cria o JComboBox de forma que vc sempre tenha a JScrollBar vertical (dentro do JComboBox tem um JScrollPane que tem uma JScrollBar), e então vc adiciona a ela um java.awt.event.AdjustmentListener e boa viagem!!
Se funcionar, ensina, hein?? Deve ter um monte de coisa aí que eu não pensei...
Aquelão!!
Tiago.[/b]
|
 |
|
|
Meu caro Adler, o jeito mais fácil de fazer um zip é usando o ZipOutputStream.
Só que se vc quer ter múltiplos arquivos, vai ter que fazer múltiplas entradas. Suponha que vc tem um método externo copyStream que copia um Stream pra outro. Pra escrever um arquivo, vc teria que abrí-lo num InputStream "is" e escrever todo o conteúdo dele no zip, associando-o a uma entrada "entry":
Este seria o seu laço de adicionar um arquivo só. Cada arquivo novo terá uma ZipEntry, e o ZipOutputStream compacta sozinho. Claro que se vc quer fazer um Winzip em Java, vai ter que mexer bem mais com essa ZipEntry, por exemplo, explicando o que é diretório e o que não é, etc.
Não ensinei nada, mas acho que deu pra pegar a idéia, né? O difícil de entender aqui não é o Java em si, mas o formato ZIP, que beira o lixo pra quem tem que manipular, mas é um tesão pra usar.
Falous,
Tiago.
|
 |
|
|
cara... "javadoc -help"!!!
Pra responder sua pergunta, já coloco aqui pra vc:
a opção que vc realmente quer é -doctitle
Como vc pode ver, dá pra editar bastante coisa, até headers e footers.
|
 |
|
|
Eu estou tendo o prazer de usar um software (feito por mim mesmo, uhu!) que usa o skinLF. Dá uma sensação agradável variar um pouco. Os skins que mais fizeram sucesso entre as pessoas da empresa foram o aqua (tipo, 90%) e o default do skinlf (tem nome de pessoa).
Pessoalmente, eu gosto bastante do Kunstoff, é o que eu uso no jEdit.
aquelão!
|
 |
|
|
|
|