在我们的Eclipse RCP 3.7应用程序中,我们加载Excel文件并显示表格中的前30行,渲染的问题不是在行中而是在列数中,当它达到一定大小时,表格不会似乎正确绘制,当你向右滚动时,单元格和标题不对齐,整个事情就变得疯狂了.
下面的独立课程演示了这个问题,并遵循我在我的应用程序中使用的基本模式,以防出现问题所在.
有关如何解决这个问题的任何想法?
import java.util.ArrayList;
import java.util.List;
import org.eclipse.jface.viewers.ArrayContentProvider;
import org.eclipse.jface.viewers.StyledCellLabelProvider;
import org.eclipse.jface.viewers.TableViewer;
import org.eclipse.jface.viewers.TableViewerColumn;
import org.eclipse.jface.viewers.ViewerCell;
import org.eclipse.swt.SWT;
import org.eclipse.swt.layout.FillLayout;
import org.eclipse.swt.widgets.Display;
import org.eclipse.swt.widgets.Shell;
import org.eclipse.swt.widgets.Table;
import org.eclipse.swt.widgets.TableColumn;
public class Snippet {
public static TableViewer viewer;
public static void main( String[] args ) {
Display display = new Display();
Shell shell = new Shell( display );
shell.setLayout( new FillLayout() );
viewer = new TableViewer(shell, SWT.FULL_SELECTION | SWT.H_SCROLL
| SWT.V_SCROLL);
Table table = viewer.getTable();
table.setLinesVisible(true);
table.setHeaderVisible(true);
viewer.setContentProvider(new ArrayContentProvider()); …Run Code Online (Sandbox Code Playgroud) 我知道UIData不支持这个,我理解为什么,但这对于使用JPA和JSF的人来说应该是一个常见问题,因为在映射M2M O2M关系时,Sets是优秀的集合.
我知道我需要创建一些结构,以便在需要时将我的属性转换为列表,但在广泛搜索这个问题之后我能找到的原因是它不起作用的原因,并且只有一些解决方案的提示.
我相信答案是创建一个ELResolver来处理这个问题,但是它们的结构以及它们的工作方式令我感到困惑,我不明白为什么我需要成为一个写这个的人,这是一个常见问题,当然有人有写了一个ELResolver这样做?
我已经找到了关于这个主题的这篇文章,但我无法复制它,因为较新的JSF似乎不允许它:
http://techblog.bozho.net/?p=28&cpage=1#comment-13700
还有这个:
http://www.jroller.com/mert/entry/settolistpropresolver_for_jsf_el
其中充斥着已弃用的代码,因为它是ELResolver之前的代码.但我只是找不到如何实现ELResolver来做到这一点.有人能指出一些有效的代码或至少类似的东西,可以帮助我了解如何使用ELResolver吗?
在开发RCP应用程序(从eclipse内部运行)期间,我遇到了一个表部件的Widget Disposed错误,堆栈跟踪很快被控制台上的调试输出淹没,我无法重新产生错误,所以我一直在尝试找到应用程序的.log文件,这将是什么?
我有一个Spring/H2/Hibernate项目,我正在尝试集成flyway.该项目使用maven构建并创建一个Jar,然后我将其包含在访问数据库的其他应用程序中.
我的问题是,当我测试spring项目时,flyway工作正常并创建我的模式,但是当我在另一个项目中部署lib时,它似乎找不到迁移脚本.我已经检查过,它们在jar文件中.
我的春天配置:
<bean id="flyway_database_1" class="org.flywaydb.core.Flyway" init-method="migrate">
<property name="dataSource" ref="dataSource1" />
<property name="locations" value="com.domain" />
<property name="sqlMigrationPrefix" value="DATABASE_1_V" />
</bean>
<bean id="dataSource1" class="org.apache.commons.dbcp.BasicDataSource"
destroy-method="close">
<property name="driverClassName" value="${database.1.driver}" />
<property name="url" value="${database.1.url}" />
</bean>
Run Code Online (Sandbox Code Playgroud)
我的应用程序在类路径中找到Spring Context XML文件和属性文件,但是flyway似乎没有找到sql文件.
对于我的位置,我尝试过"com.domain","com/domain","classpath:/","classpath:/ database1/migration /"
所有这些都在Spring项目中工作,然后在包含jar时无法检测到文件.
关于为什么会这样的任何想法?
编辑:我认为这可能是由于我在RCP应用程序中包含jar可能FlyWay检测文件的方式与Spring不同?