抛出exception后,jshell继续执行我的脚本。 如何让它停止?

我尝试编写一些jshell脚本。 抛出exception时,jshell仍继续执行下一行。 如何让我的脚本更像普通的java程序? 编辑 :我只是像jshell SCR.jsh一样运行它。 使用throw new Exception()或1/0不会阻止执行下一行。 该脚本包括如下语句: System.out.println(1/0) System.out.println(“foo”) /exit 我以为第二行无法访问。 这就是我的预期。 但是在打印exception后,还会打印foo 。

JavaFx如何在tableview中只对齐一个列标题?

如何在tableview中只对齐一列的标题? 以下css对齐所有列标题,但我想只对齐一列: .table-view .column-header .label{ -fx-alignment:CENTER }

如何确定浏览器关闭的时间?

我使用Selenium Webdriver自动化网站(填写表单并点击)以节省用户的时间。 我遇到了一个恼人的问题: Selenium似乎不支持浏览器本身的任何事件监听器。 当浏览器关闭时, 不会调用 driver.quit()并且会出现一个不可用的驱动程序,它会抛出各种exception。 无法知道浏览器何时关闭,我无法创建新的驱动程序实例。 我需要的是在浏览器关闭时通知我的程序的一些方法。 用户可能会因为破坏我程序的任何原因而关闭浏览器。 如果不重新启动应用程序,用户将无法再次运行自动化任务。 知道浏览器何时关闭将允许我调用driver.quit()并在用户想要再次运行时创建一个新的驱动程序实例。 当浏览器死亡时,抛出的错误在浏览器中并不统一,这个问题变得更加复杂。 使用Firefox,我可能会使用Chrome NullPointer和WebDriverExceptions获得UnreachableBrowserException。 为了澄清,我知道如何关闭驱动程序和浏览器,但我不知道它们何时被外部源关闭。 这可以通过跨浏览器方式在Selenium 2中完成(如果是,如何)或者我是否需要找到另一种方式(如另一个库)来观看浏览器窗口?

Spring @Scheduled注释

如何动态地使用Spring的@Scheduled注释? CronTrigger(String expression, TimeZone timeZone) http://docs.spring.io/spring/docs/current/javadoc-api/org/springframework/scheduling/support/CronTrigger.html#CronTrigger-java.lang.String-java.util.TimeZone- 由于我在数据库中有多个时区,我该如何动态传递它们? 我在我的代码中试过这个: TimeZone timezone = null; String timezone1 = null; public SchedulerBean(String timezone2) { this.timezone1 = timezone2; //constructor } @Scheduled(cron=”0 0 8 * * ?”, zone =timezone.getTimeZone(timezone1) ) //Error at this line public void sendQuestionNotif() { //……code } 这是我得到的错误 , *Type mismatch: cannot convert from TimeZone to String* 请帮帮我。 […]

忽略In-Criterion

我想用一个带有Hibernate Criteria API的In-Criterion来选择不区分大小写的项目。 例如 Criteria crit = session.createCriteria(Item.class); crit.add(Restrictions.in(“prop”, valueList).ignoreCase()); 不幸的是,Criterion类没有ignoreCase方法。 HQL不是替代品。

找不到Freemarker模板

我目前正试图让Freemarker使用Spring处理我的应用程序。 无论我尝试什么,我都会不断找到模板。 我不确定我是否正确配置了配置,但它从未找到我的模板。 这是我的spring bean配置: 每当我尝试在freemaker配置上调用getTemplate时,它总是发回模板未找到错误。 所以,如果我这样做 configuration.getTemplate(“testTemplate.ftl”) 它总是抛出IOException。 我不确定是否有人知道我做错了什么。 感谢你的帮助!

如何使用ChromeDriver在Chrome中执行Selenide

我开始使用selenide(selenium wrapper api)并且必须说它是一个很好的工具,但我唯一的问题是它缺乏在线文档或用法示例。 知道如何在google-Chrome中运行以selenide编码的应用程序。 我使用eclipse作为IDE。 我在运行配置中添加了一个带有值chrome的环境变量“browser”但是当我运行它时会选择firefox。 我的堆栈是JDBC Java Selenide

将数据传递给添加的片段 – IlligalStateException:片段已处于活动状态

我有两个活跃的片段并在平板电脑上并排显示。 当用户从fragmentA中的listview中选择一个项时,我需要将一些数据从fragmentA传递给fragmentB。 尝试将活动中的数据传递到fragmentB时出现问题。 我收到错误:IlligalStateException:片段已经激活。 我从这样的活动传递数据: @Override public void onTrackSelected(String trackId) { topBarFragment topBarFragment = (topBarFragment)getSupportFragmentManager().findFragmentById(R.id.topBar_fragment); Bundle bundle = new Bundle(); bundle.putString(“trackId”, trackId); //set Fragmentclass Arguments topBarFragment.setArguments(bundle); topBarFragment.onTrackSelected(); } 然后在fragmentB中接收如下: public void onTrackSelected() { String trackId = getArguments().getString(“trackId”); Toast.makeText(getActivity().getApplicationContext(), trackId,Toast.LENGTH_SHORT).show(); } } logcat的: 02-25 02:58:22.190: E/AndroidRuntime(29593): FATAL EXCEPTION: main 02-25 02:58:22.190: E/AndroidRuntime(29593): java.lang.IllegalStateException: Fragment already active […]

获取SoapBody元素值

这是我从服务器获得的响应,虽然我可以获取MM7Version元素值,但我无法获取Status元素值。 它返回null。 SoapMeesage XML响应: TID.BIP_TRASNID.20041103.135200.001 5.6.0 2602Invalid status Java代码: SOAPMessage response = connection.call(message, endpoint); SOAPEnvelope env= response.getSOAPPart().getEnvelope(); SOAPBody sb = env.getBody(); Name ElName = env.createName(“Status”); //Get child elements with the name XElement Iterator it = sb.getChildElements(ElName); //Get the first matched child element. //We know there is only one. SOAPBodyElement sbe = (SOAPBodyElement) it.next(); //Get the […]

Spring Transaction中是否需要exception处理?

我对使用Transaction进行exception处理有疑问。 为了清楚说明我的问题,我想展示我的配置: 活动事务类是: @Transactional public class CustomerService extends BaseService implements ICustomerService { @Transactional(readOnly = true) public Customer getCustomerById(String id) { return getDaoProvider().getCustomerDao().getCustomerById(id); } @Transactional(readOnly = false, propagation = Propagation.REQUIRED, rollbackFor = { Throwable.class }) public void addNewCustomer(CustomerDTO customerDTO) { Customer customer = new Customer(); customer.setCustomerId(customerDTO.getCustomerId()); customer.setCustomerName(customerDTO.getCustomerName()); customer.setActive(customerDTO.isActive()); getDaoProvider().getCustomerDao().save(customer); } } 我的疑惑在于addNewCustomer方法。 我已经设置了rollbackFor = { Throwable.class […]