Tag: grails

在grails控制器中识别ajax请求或浏览器请求

我正在开发一个使用大量ajax的grails应用程序。如果请求是ajax调用那么它应该给出响应(这部分工作),但是如果我在浏览器中键入URL它应该带我到home / index页面而不是请求的page.Below是ajax调用的示例gsp代码。 //ajax call rendered in this area 如果我们在浏览器URL栏中输入http:// localhost:8080 / Dash / todo / list ,控制器应重定向到http:// localhost:8080 / Dash / auth / index 如何在控制器中validation这一点。

存储webapp临时数据的最佳实践

我的最新项目能够使用数据库中的信息生成文档。 因此,我将文档模板按需复制到用户的临时文件夹并进行修改。 我这样做是因为每个模板在修改期间都必须可用。 之后,用户通过我的webapp下载链接获得他的文档。 我的问题:存储webapp数据是否有最佳实践? 我觉得温度会很好。 但是因为我必须自己删除数据,所以我想把它放在tomcat webapp文件夹中的WAR文件夹旁边。 我使用Windows 2003作为Tomcat的主机系统。 我为我的项目使用Grails,Java和Maven ……不知道是否需要这些信息。 编辑: 我提出这个微不足道的问题的主要原因是……如果我负责创建/删除我的临时数据……在系统上使用临时文件夹仍然是一个好习惯吗? 我不确定这个……

validationIP地址(带掩码)

我有ip地址和一个掩码,如10.1.1.1/32 。 我想检查10.1.1.1是否在该范围内。 是否有可以执行此操作的库或实用程序,或者我是否需要自己编写内容?

使用条件选择查询

我在这里有三个表。用户可以应用可用的培训。当他/她选择培训时,它根据他/她的用户ID被放置在TRAINUSER表中。 我想在他/她登录时选择用户并显示他/她未应用培训的TRAINUSER表中的数据。 与user_id 1一样,已经应用了2次和3次训练,但未应用1次和4次训练。 我希望user_id 1使用hibernate查询显示训练1和4。

相当于Grails中的InheritanceType.TABLE_PER_CLASS?

我想为3个域类创建3个单独的表:A,B扩展A,C扩展B但是我希望它们的表不相互连接。 在hibernate中,我会在grails中使用InheritanceType.TABLE_PER_CLASS,它会等同于什么?

Grails @Autowire在Java类中无法正常工作

我有一些Java代码,我想变成一个Bean,可以通过dependency injection在Grails控制器和服务中使用。 代码基于此处 (在作为独立Java应用程序运行时可以正常工作)。 具体来说,我有: // WannabeABeanDB.java package hello; import org.neo4j.graphdb.GraphDatabaseService; import org.neo4j.graphdb.Transaction; import org.neo4j.graphdb.factory.GraphDatabaseFactory; import org.neo4j.kernel.impl.util.FileUtils; import org.springframework.beans.factory.annotation.Autowired; import org.springframework.context.annotation.Bean; import org.springframework.context.annotation.Configuration; import org.springframework.data.neo4j.config.EnableNeo4jRepositories; import org.springframework.data.neo4j.config.Neo4jConfiguration; import org.springframework.data.neo4j.core.GraphDatabase; import java.io.File; @Component @Configuration @EnableNeo4jRepositories(basePackages = “hello”) public class WannabeABeanDB extends Neo4jConfiguration { public WannabeABeanDB() { setBasePackage(“hello”); } @Bean GraphDatabaseService graphDatabaseService() { return new GraphDatabaseFactory().newEmbeddedDatabase(“accessingdataneo4j.db”); } […]

如何阅读控制台输出

使用Grails框架,如何阅读控制台输出。 我的意思是我的grails应用程序中有一个java库,它输出(system.out.println(“x”))到控制台,我想在我的grails应用程序的文本框中显示它。 我该怎么做呢 我不想将消息写入文件并以这种方式或数据库读取它们。 有没有直接从控制台读取。 提前致谢。 编辑** 它是我正在使用的第三方jar文件

奇怪的浮动除法结果

我发生在grails项目中的这个奇怪的除法错误中(但我认为grails与它没什么关系,我认为这是一个常规或java问题): 如果在groovy控制台中我运行它 float money = -1.30 float r = 0.01 println ((money/r).class.name) println ((money/r).floatValue()) println ((money/r).toString() ) 我得到了这个输出 java.lang.Double -130.0 -129.99999813735482 groovy中的float分区给了我一个Double,这是正确的,但为什么Double toString()给我一个如此奇怪的值“-129.99999813735482”而不是正确的“-130.0”?

为什么我的Geb测试返回“无法从回调中创建驱动程序”,即使在Grails中更新我的Selenium依赖项后?

我正在引用此前一个线程( geb.driver.DriverCreationException:无法从回调创建驱动程序 ) – 但我仍然遇到问题。 我正在尝试在Grails 2.4.3下运行Gebfunction测试,并且我将Selenium支持依赖项设置为版本2.42.2。 我也尝试过2.43.1和2.45.0。 如果我尝试使用Selenium 2.42.2或2.43.1,Geb将停止运行并且不会完成,如果我使用2.45.0,它将彻底崩溃。 这些是我得到的错误: 如果我尝试Selenium支持2.42.2或2.43.1,我收到此错误:geb.driver.DriverCreationException:无法从回调创建驱动程序 如果我尝试Selenium支持2.45.0 – 我的浏览器将尝试运行Geb测试,但会返回“页面不是直接正确”错误。 在我的Grails BuildConfig.groovy中,这是我现在设置的selenium依赖项: def seleniumVersion = “2.45.0” dependencies { // specify dependencies here under either ‘build’, ‘compile’, ‘runtime’, ‘test’ or ‘provided’ scopes eg // runtime ‘mysql:mysql-connector-java:5.1.29’ // runtime ‘org.postgresql:postgresql:9.3-1101-jdbc41’ compile ‘org.dbunit:dbunit:2.5.0’ test “org.seleniumhq.selenium:selenium-firefox-driver:$seleniumVersion” test “org.gebish:geb-spock:$gebVersion” compile “org.springframework:spring-orm:4.0.5.RELEASE” // need for select […]

将Groovy Grails-service注入Java类

我有一个在Groovy中实现的Grails服务,我想在Web应用程序中注入Java类。 我知道我可以通过applicationContext.getBean(“exampleService”)在Java中获取bean,但是在编译时类型ExampleService是未知的。 我可以简单地导入服务吗? 它似乎没有声明一个典型的包。 (我对Grails和Java Web都很陌生,因此非常感谢能够帮助我了解幕后发生的事情。)