我尝试了一个新的JQuery库实现:dropzone.js
该库提供了一个带拖放解决方案的良好的多上传界面.
似乎Symfony的多上传系统并不容易.
我有这个错误:
Error: Cannot use object of type Symfony\Component\HttpFoundation\File\UploadedFile as array in /vendor/symfony/symfony/src/Symfony/Component/Form/Extension/Csrf/EventListener/CsrfValidationListener.php line 87
Run Code Online (Sandbox Code Playgroud)
我的实体文件:
/**
* @ORM\Entity
* @ORM\Table(name="media__file")
* @ORM\HasLifecycleCallbacks
*/
class File
{
/**
* @ORM\Id
* @ORM\Column(type="integer")
* @ORM\GeneratedValue(strategy="AUTO")
*/
public $id;
/**
* @ORM\Column(type="string", length=255)
* @Assert\NotBlank
*/
public $name;
/**
* @ORM\Column(type="string", length=255, nullable=true)
*/
public $path;
/**
* @Assert\File(maxSize="6000000")
*/
public $file;
public function getAbsolutePath()
{
return null === $this->path ? null : $this->getUploadRootDir().'/'.$this->path;
}
public function getWebPath()
{ …Run Code Online (Sandbox Code Playgroud) 我使用MVC模式,我有一个像这样的JTable:
List<Enregistrement> desEnregistrements = dao.lireTousLesEnregistrements(1);
((VueAfficherCompteCIO)vue).getModeleJTableCIO().addColumn("Date Enregistrement");
((VueAfficherCompteCIO)vue).getModeleJTableCIO().addColumn("Libellé");
((VueAfficherCompteCIO)vue).getModeleJTableCIO().addColumn("Motif");
((VueAfficherCompteCIO)vue).getModeleJTableCIO().addColumn("Date facture");
((VueAfficherCompteCIO)vue).getModeleJTableCIO().addColumn("Mode de règlement");
((VueAfficherCompteCIO)vue).getModeleJTableCIO().addColumn("Montant");
((VueAfficherCompteCIO)vue).getModeleJTableCIO().addColumn("Solde");
((VueAfficherCompteCIO)vue).getModeleJTableCIO().addColumn("Etat");
((VueAfficherCompteCIO)vue).getModeleJTableCIO().addColumn("Modifier");
((VueAfficherCompteCIO)vue).getModeleJTableCIO().addColumn("RecDep");
((VueAfficherCompteCIO)vue).getModeleJTableCIO().addColumn("Anticipation");
for (Enregistrement unEnregistrement : desEnregistrements) {
((VueAfficherCompteCIO)vue).getModeleJTableCIO().addRow(new String[]{unEnregistrement.getDate(), unEnregistrement.getIdLibelle(), unEnregistrement.getMotif(), unEnregistrement.getDateFacture(), unEnregistrement.getModeReglement(), unEnregistrement.getMontant(), unEnregistrement.getNouveauSolde(), unEnregistrement.getIdEtat(),unEnregistrement.getId(), unEnregistrement.getRecetteDepense(), unEnregistrement.getAnticipation()});
}
aspectJtable();
Run Code Online (Sandbox Code Playgroud)
我想使用这个JTable拖动和移动行,所以我实现了这个代码:如何在JTable中拖放行?
但我不明白我如何能够为我的TableModel实现"可重新排序"界面.
当我运行我的项目时,我可以使用拖动和移动(我看到拖动......)但没有移动.
接下来,我有这个错误:
java.lang.ClassCastException: vues.VueAfficherCompteCIO$1 cannot be cast to controleurs.Reorderable
at controleurs.TableRowTransferHandler.importData(TableRowTransferHandler.java:55)
at javax.swing.TransferHandler$DropHandler.drop(TransferHandler.java:1536)
at java.awt.dnd.DropTarget.drop(DropTarget.java:450)
at javax.swing.TransferHandler$SwingDropTarget.drop(TransferHandler.java:1274)
at sun.awt.dnd.SunDropTargetContextPeer.processDropMessage(SunDropTargetContextPeer.java:537)
at sun.awt.X11.XDropTargetContextPeer.processDropMessage(XDropTargetContextPeer.java:184)
at sun.awt.dnd.SunDropTargetContextPeer$EventDispatcher.dispatchDropEvent(SunDropTargetContextPeer.java:851)
at sun.awt.dnd.SunDropTargetContextPeer$EventDispatcher.dispatchEvent(SunDropTargetContextPeer.java:775)
at sun.awt.dnd.SunDropTargetEvent.dispatch(SunDropTargetEvent.java:48)
at java.awt.Component.dispatchEventImpl(Component.java:4716)
at java.awt.Container.dispatchEventImpl(Container.java:2287)
at java.awt.Component.dispatchEvent(Component.java:4687)
at java.awt.LightweightDispatcher.retargetMouseEvent(Container.java:4832)
at java.awt.LightweightDispatcher.processDropTargetEvent(Container.java:4566)
at …Run Code Online (Sandbox Code Playgroud)