Autor
Mensagem
Bom dia, acredito esta ser uma dúvida simples, mas estou tentando elaborar um controle de chamados em Java SE, onde tenho que anexar prints de telas savas em pdf ou doc, criei uma campo anexo no BD (Blob), mas não consigo anexar. O sistema em si está funcionando, gravando no BD (mySQL) normal, somente esta opçao que não consigo fazer funcionar.
Estou utilizando o Netbeans + MySql - e paleta swing (para ajudar).
Obrigado.
Davi, li o tópico informado, ajudou mas nem tanto o quanto precisava, veja se consegue me ajudar, consegui abrir a janela para escolha do arquivo, quando seleciono o aquivo o path completo vai para a text field, mas não esta indo para o BD e está dando um erro de compilação.
Preciso que o anexo vá para o banco e quando eu consulte o chamado eu consiga abrir esse anexo do BD.
Segue meu código:
#Código
private void jButton1ActionPerformed(java.awt.event.ActionEvent evt) {
JFileChooser fileChooser = new JFileChooser();
fileChooser.setAcceptAllFileFilterUsed(true);
fileChooser.setAcceptAllFileFilterUsed(true);
int result = fileChooser.showOpenDialog(this);
if (result == JFileChooser.APPROVE_OPTION) {
if (result == JFileChooser.APPROVE_OPTION) {
File file = fileChooser.getSelectedFile();
if (file != null) {
tfAnexar.setText(fileChooser.getSelectedFile().getAbsolutePath());
tfAnexar.setText(fileChooser.getSelectedFile().getAbsolutePath());
}
}
}
Este é o erro:
#Código
run:
[EL Info]: 2011-06-02 11:27:27.171--ServerSession(32946703)--EclipseLink, version: Eclipse Persistence Services - 2.0.2.v20100323-r6872
[EL Info]: 2011-06-02 11:27:29.14--ServerSession(32946703)--file:/C:/Documents and Settings/paulo.thiago/Meus documentos/Juscelino/chamados/projeto/Chamado/build/classes/_ChamadoPU login successful
Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException
at java.lang.Class.cast(Class.java:2990)
at org.jdesktop.beansbinding.Binding.convertReverse(Binding.java:1321)
at org.jdesktop.beansbinding.Binding.getTargetValueForSource(Binding.java:909)
at org.jdesktop.beansbinding.Binding.saveUnmanaged(Binding.java:1268)
at org.jdesktop.beansbinding.Binding.save(Binding.java:1254)
at org.jdesktop.beansbinding.AutoBinding.trySaveThenRefresh(AutoBinding.java:176)
at org.jdesktop.beansbinding.AutoBinding.targetChangedImpl(AutoBinding.java:249)
at org.jdesktop.beansbinding.Binding.targetChanged(Binding.java:1433)
at org.jdesktop.beansbinding.Binding.access$1300(Binding.java:38)
at org.jdesktop.beansbinding.Binding$PSL.propertyStateChanged(Binding.java:1620)
at org.jdesktop.beansbinding.PropertyHelper.firePropertyStateChange(PropertyHelper.java:212)
at org.jdesktop.beansbinding.BeanProperty.notifyListeners(BeanProperty.java:712)
at org.jdesktop.beansbinding.BeanProperty.access$1000(BeanProperty.java:143)
at org.jdesktop.beansbinding.BeanProperty$SourceEntry.cachedValueChanged(BeanProperty.java:369)
at org.jdesktop.beansbinding.BeanProperty$SourceEntry.propertyValueChanged(BeanProperty.java:409)
at org.jdesktop.beansbinding.BeanProperty$SourceEntry.propertyChange(BeanProperty.java:414)
at java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:339)
at java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:276)
at org.jdesktop.swingbinding.adapters.BeanAdapterBase.firePropertyChange(BeanAdapterBase.java:112)
at org.jdesktop.swingbinding.adapters.JTextComponentAdapterProvider$Adapter$Handler.updateText(JTextComponentAdapterProvider.java:136)
at org.jdesktop.swingbinding.adapters.JTextComponentAdapterProvider$Adapter$Handler.textChanged(JTextComponentAdapterProvider.java:149)
at org.jdesktop.swingbinding.adapters.JTextComponentAdapterProvider$Adapter$Handler.replace(JTextComponentAdapterProvider.java:182)
at javax.swing.text.AbstractDocument.replace(AbstractDocument.java:647)
at javax.swing.text.JTextComponent.setText(JTextComponent.java:1693)
at View.AberturaChamado.jButton1ActionPerformed(AberturaChamado.java:608)
at View.AberturaChamado.access$700(AberturaChamado.java:28)
at View.AberturaChamado$FormListener.actionPerformed(AberturaChamado.java:553)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
at java.awt.Component.processMouseEvent(Component.java:6288)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
at java.awt.Component.processEvent(Component.java:6053)
at java.awt.Container.processEvent(Container.java:2041)
at java.awt.Component.dispatchEventImpl(Component.java:4651)
at java.awt.Container.dispatchEventImpl(Container.java:2099)
at java.awt.Component.dispatchEvent(Component.java:4481)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
at java.awt.Container.dispatchEventImpl(Container.java:2085)
at java.awt.Window.dispatchEventImpl(Window.java:2478)
at java.awt.Component.dispatchEvent(Component.java:4481)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:643)
at java.awt.EventQueue.access$000(EventQueue.java:84)
at java.awt.EventQueue$1.run(EventQueue.java:602)
at java.awt.EventQueue$1.run(EventQueue.java:600)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)
at java.awt.EventQueue$2.run(EventQueue.java:616)
at java.awt.EventQueue$2.run(EventQueue.java:614)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:613)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
CONSTRUÍDO COM SUCESSO (tempo total: 1 minuto 35 segundos)
[EL Info]: 2011-06-02 11:27:27.171--ServerSession(32946703)--EclipseLink, version: Eclipse Persistence Services - 2.0.2.v20100323-r6872
[EL Info]: 2011-06-02 11:27:29.14--ServerSession(32946703)--file:/C:/Documents and Settings/paulo.thiago/Meus documentos/Juscelino/chamados/projeto/Chamado/build/classes/_ChamadoPU login successful
Exception in thread "AWT-EventQueue-0" java.lang.ClassCastException
at java.lang.Class.cast(Class.java:2990)
at org.jdesktop.beansbinding.Binding.convertReverse(Binding.java:1321)
at org.jdesktop.beansbinding.Binding.getTargetValueForSource(Binding.java:909)
at org.jdesktop.beansbinding.Binding.saveUnmanaged(Binding.java:1268)
at org.jdesktop.beansbinding.Binding.save(Binding.java:1254)
at org.jdesktop.beansbinding.AutoBinding.trySaveThenRefresh(AutoBinding.java:176)
at org.jdesktop.beansbinding.AutoBinding.targetChangedImpl(AutoBinding.java:249)
at org.jdesktop.beansbinding.Binding.targetChanged(Binding.java:1433)
at org.jdesktop.beansbinding.Binding.access$1300(Binding.java:38)
at org.jdesktop.beansbinding.Binding$PSL.propertyStateChanged(Binding.java:1620)
at org.jdesktop.beansbinding.PropertyHelper.firePropertyStateChange(PropertyHelper.java:212)
at org.jdesktop.beansbinding.BeanProperty.notifyListeners(BeanProperty.java:712)
at org.jdesktop.beansbinding.BeanProperty.access$1000(BeanProperty.java:143)
at org.jdesktop.beansbinding.BeanProperty$SourceEntry.cachedValueChanged(BeanProperty.java:369)
at org.jdesktop.beansbinding.BeanProperty$SourceEntry.propertyValueChanged(BeanProperty.java:409)
at org.jdesktop.beansbinding.BeanProperty$SourceEntry.propertyChange(BeanProperty.java:414)
at java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:339)
at java.beans.PropertyChangeSupport.firePropertyChange(PropertyChangeSupport.java:276)
at org.jdesktop.swingbinding.adapters.BeanAdapterBase.firePropertyChange(BeanAdapterBase.java:112)
at org.jdesktop.swingbinding.adapters.JTextComponentAdapterProvider$Adapter$Handler.updateText(JTextComponentAdapterProvider.java:136)
at org.jdesktop.swingbinding.adapters.JTextComponentAdapterProvider$Adapter$Handler.textChanged(JTextComponentAdapterProvider.java:149)
at org.jdesktop.swingbinding.adapters.JTextComponentAdapterProvider$Adapter$Handler.replace(JTextComponentAdapterProvider.java:182)
at javax.swing.text.AbstractDocument.replace(AbstractDocument.java:647)
at javax.swing.text.JTextComponent.setText(JTextComponent.java:1693)
at View.AberturaChamado.jButton1ActionPerformed(AberturaChamado.java:608)
at View.AberturaChamado.access$700(AberturaChamado.java:28)
at View.AberturaChamado$FormListener.actionPerformed(AberturaChamado.java:553)
at javax.swing.AbstractButton.fireActionPerformed(AbstractButton.java:1995)
at javax.swing.AbstractButton$Handler.actionPerformed(AbstractButton.java:2318)
at javax.swing.DefaultButtonModel.fireActionPerformed(DefaultButtonModel.java:387)
at javax.swing.DefaultButtonModel.setPressed(DefaultButtonModel.java:242)
at javax.swing.plaf.basic.BasicButtonListener.mouseReleased(BasicButtonListener.java:236)
at java.awt.Component.processMouseEvent(Component.java:6288)
at javax.swing.JComponent.processMouseEvent(JComponent.java:3267)
at java.awt.Component.processEvent(Component.java:6053)
at java.awt.Container.processEvent(Container.java:2041)
at java.awt.Component.dispatchEventImpl(Component.java:4651)
at java.awt.Container.dispatchEventImpl(Container.java:2099)
at java.awt.Component.dispatchEvent(Component.java:4481)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4577)
at java.awt.LightweightDispatcher.processMouseEvent(Container.java:4238)
at java.awt.LightweightDispatcher.dispatchEvent(Container.java:4168)
at java.awt.Container.dispatchEventImpl(Container.java:2085)
at java.awt.Window.dispatchEventImpl(Window.java:2478)
at java.awt.Component.dispatchEvent(Component.java:4481)
at java.awt.EventQueue.dispatchEventImpl(EventQueue.java:643)
at java.awt.EventQueue.access$000(EventQueue.java:84)
at java.awt.EventQueue$1.run(EventQueue.java:602)
at java.awt.EventQueue$1.run(EventQueue.java:600)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:98)
at java.awt.EventQueue$2.run(EventQueue.java:616)
at java.awt.EventQueue$2.run(EventQueue.java:614)
at java.security.AccessController.doPrivileged(Native Method)
at java.security.AccessControlContext$1.doIntersectionPrivilege(AccessControlContext.java:87)
at java.awt.EventQueue.dispatchEvent(EventQueue.java:613)
at java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:269)
at java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:184)
at java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:174)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:169)
at java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:161)
at java.awt.EventDispatchThread.run(EventDispatchThread.java:122)
CONSTRUÍDO COM SUCESSO (tempo total: 1 minuto 35 segundos)
Muito obrigado!
Claro que se souber de outro tópico também ajuda.
Juscelino
Davi, não consegui encontrar o erro, o que pude perceber ao debugar o sistema, o erro ocorre logo após eu selecionar o arquivo a ser anexado, quando ele tentar colocar o caminho absoluto no field.
Cara tem alguma outra alternativa para que eu consiga anexar arquivos???
Obrigado,
Juscelino
public void jButton1ActionPerformed(ActionEvent evt) {
JFileChooser fileChooser = new JFileChooser();
int result = fileChooser.showOpenDialog(null);
File file = fileChooser.getSelectedFile();
if (file != null && result == JFileChooser.APPROVE_OPTION) {
tfAnexar.setText(file.getAbsolutePath());
}
}
Testa assim agora.
Att Davi
Dyego,
Ainda não cosnegui executar esse processo para enviar um anexo, até pergunto para você se em alguma aula sua vc ensina como fazer isso (mandar um arquivo ou endereço para o banco para que eu possa consultar), te pergunto isso por que sempre acompanho suas aula que por sinal são excelentes.
Obrigado,
Juscelino
Davi,

Boa tarde, então, apesar de todo seu esforço eu ainda não consegui fazer, estou mandando algumas informações, se poder dar uma olhada e ver se entende o que está ocorrendo. os código de erros e telas de debug já estão citados neste tópico.
Muito obrigado, e me desculpe mas não sou tão experiente ainda...
Juscelino
Queria que vc postasse o log de erro depois que colocou seu código como esse :
public void jButton1ActionPerformed(ActionEvent evt) {
JFileChooser fileChooser = new JFileChooser();
int result = fileChooser.showOpenDialog(null);
File file = fileChooser.getSelectedFile();
if (file != null && result == JFileChooser.APPROVE_OPTION) {
tfAnexar.setText(file.getAbsolutePath());
}
}
Que postei por último, senão colocou o código assim ... testa e põe o erro.
Att Davi
public void jButton1ActionPerformed(ActionEvent evt) {
JFileChooser fileChooser = new JFileChooser();
int result = fileChooser.showOpenDialog(null);
File file = fileChooser.getSelectedFile();
if (file != null && result == JFileChooser.APPROVE_OPTION) {
tfAnexar.setText(file.getAbsolutePath());
}
}
Que postei por último, senão colocou o código assim ... testa e põe o erro.
Att Davi
Ola Juscelino, tive um problema parecido com o seu pouco tempo atras.
vc pode mandar o bkp do BD que vc esta usando, ea aplicação junto via rapshare ou outro compartilhador para estarmos analizando o codigo em nossa empresa, se quiser pode ficar a vontade, ai vamos estudar mais detalhadamento o seu caso. Obrigado
vc pode mandar o bkp do BD que vc esta usando, ea aplicação junto via rapshare ou outro compartilhador para estarmos analizando o codigo em nossa empresa, se quiser pode ficar a vontade, ai vamos estudar mais detalhadamento o seu caso. Obrigado







