如何在TableView中获取特定点的行号?

我在JavaFX中创建TableView 。 我想在鼠标右键单击显示Context Menu 。 所以我按照下面给出的那样做。 EventHandler event = new EventHandler() { @Override public void handle(MouseEvent me) { if (me.getButton() == MouseButton.SECONDARY) { tableView.getContextMenu().show(tableView, me.getSceneX(), me.getSceneY()); } } }; tableView.addEventHandler(MouseEvent.MOUSE_CLICKED, event); 但我想这样做只有在我点击TableView任何行时,才能看到Context Menu 。 即如何在TableView中获取特定点的行号,这样我的Context Menu应该只有可见,如果我点击TableView任何一行。

GreenDao异步加载所有的方法

我可以使用GreeDAO的AsyncSession成功地异步插入行,如下所示: getMyObjectDao().getSession().startAsyncSession().insertOrReplaceInTx(MyObject.class, list); 如何异步将db中的所有对象加载到ArrayList中。 到目前为止,我已尝试下面的代码,但它不起作用: 1- items = getBoxDao(c).getSession().startAsyncSession().loadAll(MyObject.class) ; 2- @Override public void onAsyncOperationCompleted(AsyncOperation operation) { String operationIs = null; switch (operation.getType()) { case LoadAll: itemsList = BoxRepository.getAllBoxes(getApplicationContext());

App Engine日志中的/ _ah / queue / __ deferred__

我有一个使用Google Cloud SQL的App Engine应用程序,从我的应用程序中的一个页面我正在做一些数据库操作; 无论何时访问此页面,它都无法执行所有数据库操作。 当我进入控制台时,我看到的只是/_ah/queue/__deferred__ 。 我能够在localhost上运行应用程序而没有任何问题,因此代码没有错误,但是,在部署之后,Cloud SQL存在问题。 注意:我的代码中没有使用任何队列。 /_ah/queue/__deferred__ 出现在App Engine日志中 的实际原因是什么 ?

无法解析postdelayed方法

好吧,这是我的代码: final TextToSpeech ttv = new TextToSpeech(MainActivity.this, new TextToSpeech.OnInitListener() { public void onInit(int status) { ttv.setLanguage(Locale.US); Log.e(“Init”, “Success”); ttvInit = true; // wait a little for the initialization to complete Handler h = new Handler(); h.postDelayed(new Runnable() { public void run() { ttv.speak(textSpeech.getText().toString(),TextToSpeech.QUEUE_FLUSH,null); } }, 400);} else { System.out.println(“Something went wrong.”); } } 但我得到一个错误“无法解决方法’postDelayed(java.lung.Runnable,int)’ 编辑:它现在告诉我它没用了: […]

savedInstanceState始终为null

所以我在我的OnsavedInstanceState中有这个代码 @Override public void onSaveInstanceState(Bundle savedInstanceState) { super.onSaveInstanceState(savedInstanceState); String [] a={“haha”}; savedInstanceState.putStringArray(“MyStringarray”, a); Toast.makeText(context, “Saved array”, Toast.LENGTH_SHORT).show(); } 我在onCreate中有这个代码 @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); if(savedInstanceState==null){ Toast.makeText(this, “not there”, Toast.LENGTH_SHORT).show(); }else{ Toast.makeText(this, “is there”, Toast.LENGTH_SHORT).show(); } } 怎么烤面包总是说不在那里? 我打开应用程序然后切换到另一个应用程序,它显示吐司保存数组,但当我重新打开应用程序,它说不存在,即使捆绑应该有包含“哈哈”的字符串数组。 非常感谢!

Spring mvc @DateTimeFormat无法按预期工作

我刚刚在jsp中制作的简单页面中添加了一个jQuery日期选择器。 使用Spring mvc 4.0.0。 我想在我的模型类中有java.util.Date字段,让spring将日期String从前端转换为日期。 我的问题是,如果我有 @DateTimeFormat(pattern = “dd/MM/yy”) private Date startDate; 在我的模型类中,我在spring控制器中收到null值。 (startDate setter既不被调用)如果我将startDate更改为一个简单的String,那么正确填充该值并且在控制器中我能够检索startDate字符串。 你能告诉我我错过了什么吗? 试图按照http://gerrydevstory.com/2013/05/21/binding-date-form-input-on-spring-mvc/似乎没有使用其他技巧将String转换为Date。

嵌入式Jetty和复杂日志记录

Jetty 9用于嵌入式服务器,一切运行良好。 剩下的一件事是记录问题。 在此之前,mvn:jetty-run带有自己的日志记录设置并登录到控制台。 这有利于发展。 在生产环境中,我们需要更特别的东西。 目前在初创公司SLF4J抱怨说,没有绑定可用,所以我们可以自由选择。 这就是我们想要存档的内容: 如果我们在非生产环境中启动,我们需要登录到控制台。 在生产环境中,日志记录应该在一个日志文件中完成,但是每天使用命名模式完成:logs / logname-date.log(例如logs / application-20130926.log) 我们使用命令行参数’-production’来区分生产模式和非生产模式。 由于jetty服务器是嵌入式的,我希望有一个解决方案,我们可以完全配置记录器,而无需管理xml或属性文件,使得日志配置方面脱离了部署过程。 那么我们有什么选择?我们如何以最佳方式做到这一点? 更新 :似乎退回是可行的方法。 它支持日志文件轮换,还可以使用控制台输出。 剩下的难题是如何以编程方式执行此操作而无需其他文件。

显示splashscreen然后AppIntro(首次启动)比mainactivity不工作

我已经制作了Android应用程序,其中onLaunch我要显示SplashScreen 3秒然后AppInro(如果首次在幻灯片中启动)然后MainActivity启动。 实际上我在最后做了闪屏活动,但是我把它设置得很好但是现在在splashScreen MainActivity直接启动之后。 AppIntro没有显示(即使在第一次启动时)在添加SplashScreen活动之前AppIntro工作正常。 闪屏 import android.app.Activity; import android.content.Intent; import android.os.Bundle; import android.os.Handler; public class SpashScreen extends Activity { private PrefManager prefManager; // Splash screen timer private static int SPLASH_TIME_OUT = 3000; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_splash); new Handler().postDelayed(new Runnable() { /* * Showing splash screen with a timer. This will […]

Hibernate ManyToMany和超类映射问题

我需要在Hibernate中创建一个关系,链接三个表:Survey,User和Group。 用户或组可以看到调查,组是多个用户的forms。 我的想法是为User和Group创建一个超类,并在该超类和Survey之间创建一个ManyToMany关系。 我的问题是Group,不是映射到表,而是映射到视图,所以我不能在几个表中拆分Group的字段 – 如果我创建了一个公共超类,会发生这种情况。 我考虑过创建一个通用接口,但不允许映射到它们。 我可能最终会找到一个两个关系的解决方案(Survey-User和Survey-Group),但我不太喜欢这种方法。 我还想过创建一个看起来像这样的表: Survey Id | ElementId | Type ElementId将是Group或UserId,类型是它的类型。 有谁知道如何使用hibernate注释实现它? 还有其他想法吗? 非常感谢

Struts 2在validation器扩展中使用StringUtils

我们使用Struts 2validation器@FieldExpressionValidator和@ExpressionValidator 。 这些validation器检查OGNL表达式。 在很多情况下,我们在这些表达式中处理字符串。 expression=”(captcha==” && captcha== null || ….) 我们发现如果我们可以在这里使用StringUtils(isEmpty,trimToEmpty,…)非常有用。 当我们将struts.ognl.allowStaticMethodAccess设置为false时,出于安全问题,我们尝试通过将此getter添加到action来解决它 public StringUtils getStringUtils(){ return new StringUtils(); } 然后在表达式中使用stringUtils.isEmpty(captcha) 。 但它没有用。 调试我们测试 ActionContext.getContext().getValueStack().findValue(“stringUtils”); //returns org.apache.commons.lang3.StringUtils@693ade51 which shows there is an object in the stack ActionContext.getContext().getValueStack().findValue(“stringUtils.isEmpty(‘dd’)”); //returns null 任何意见 ?!