我最近将Grails应用程序从2.1.1升级到2.3.7.它显示了一些可搜索插件的例外情况.我正在使用搜索:0.6.6
异常看起来像这样:
C:\Users\Charu\.grails\2.3.7\projects\jobjoos\plugins\searchable-0.6.6\src\java\grails\plugin\searchable\internal\compass\config\EnvironmentSearchableCompassConfigurator.java:25: package org.apache.lucene.analysis does not exist
import org.apache.lucene.analysis.Analyzer;
^
C:\Users\Charu\.grails\2.3.7\projects\jobjoos\plugins\searchable-0.6.6\src\java\grails\plugin\searchable\internal\compass\search\DefaultSuggestQueryMethod.java:31: package org.apache.lucene.analysis does not exist
import org.apache.lucene.analysis.WhitespaceAnalyzer;
Run Code Online (Sandbox Code Playgroud)
任何人都可以帮助我,关于导致它失败的原因以及如何将其删除.
我正在使用Grails 2.3.11并使用MongoDb插件mongodb:3.0.3.
我的代码看起来像这样:
def home() {
List abcs = ABC.list()
println abcs.unique { it.parent }
}
Run Code Online (Sandbox Code Playgroud)
访问唯一闭包时代码中断.
例外说:
ERROR errors.GrailsExceptionResolver- UnsupportedOperationException occurred when processing request: [GET] /MongoAppInEcomEnv/product/home
Stacktrace follows:
Message: null
Line | Method
->> 148 | add in java.util.AbstractList
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
| 108 | add …Run Code Online (Sandbox Code Playgroud) 任何人都可以让我知道如何要求一个类的静态方法.我尝试使用下面的代码并且它不能使用它:
import groovy.mock.interceptor.MockFor
final mockCl = new MockFor(ClassName)
mockCl.demand.static.methodName(1) { return 'something' }
Run Code Online (Sandbox Code Playgroud)
有了它,它给出了以下例外:
groovy.lang.MissingPropertyException: No such property: static for class: groovy.mock.interceptor.Demand at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap(ScriptBytecodeAdapter.java:53) at org.codehaus.groovy.runtime.callsite.GetEffectivePogoPropertySite.getProperty(GetEffectivePogoPropertySite.java:87)
Run Code Online (Sandbox Code Playgroud)
有人能指出我如何使用grails 3在JUNIT中模拟静态方法.
我正在编写自己的CustomEmailAppender来发送生成错误的电子邮件.
代码如下:
class CustomEmailAppender extends AppenderSkeleton {
def ctx = ApplicationHolder.getApplication().getMainContext()
def mailService = ctx.getBean('mailService')
def springSecurityService = ctx.getBean('springSecurityService')
def executorService = ctx.getBean('executorService')
public static void register() {
CustomEmailAppender appender = new CustomEmailAppender()
Logger.getRootLogger().addAppender(appender)
Logger.getLogger("StackTrace").addAppender(appender)
}
/**
* Constructor with default values.
*/
public CustomEmailAppender() {
setThreshold(Level.ERROR)
setLayout(new PatternLayout("%c{2} %m%n"))
}
/**
* {@inheritDoc}
*/
@Override
public void append(final LoggingEvent event) {
if (!event.getLevel().isGreaterOrEqual(Level.ERROR)) {
return
}
event.getThreadName()
event.getNDC()
event.getMDCCopy()
sendErrorEmail(layout.format(event))
}
/**
* {@inheritDoc}
* @see org.apache.log4j.AppenderSkeleton#close()
*/
public …Run Code Online (Sandbox Code Playgroud) 我正在使用 jackson 库,并且遇到了一种情况,我想在序列化/反序列化时使用 objectmapper 禁用 @JsonFormat 注释。
我的 Api 代码位于第 3 方库中,因此我无法删除/添加任何注释,因此 objectMapper 是唯一的选择。
API类:
public class ApiClass {
@JsonFormat(pattern = "yyyy-MM-dd'T'HH:mm:ss'Z'")
private DateTime time;
}
Run Code Online (Sandbox Code Playgroud)
我的代码:
ObjectMapper objectMapper = new ObjectMapper();
objectMapper.configure(SerializationFeature.WRITE_DATES_AS_TIMESTAMPS, false);
objectMapper.configure(Feature.ALLOW_COMMENTS, true);
objectMapper.configure(MapperFeature.AUTO_DETECT_IS_GETTERS, true);
objectMapper.configure(DeserializationFeature.FAIL_ON_UNKNOWN_PROPERTIES, false);
objectMapper.configure(SerializationFeature.FAIL_ON_EMPTY_BEANS, false);
objectMapper.setSerializationInclusion(Include.NON_ABSENT);
objectMapper.registerModule(new JodaModule());
objectMapper.registerModule(new JavaTimeModule());
String str = " {\"time\": \"2012-05-01\"}";
ApiClass msg = objectMapper.readValue(str, ApiClass.class);
Run Code Online (Sandbox Code Playgroud)
我希望这次转换能够成功进行。
目前我得到: com.fasterxml.jackson.databind.JsonMappingException:格式无效:“2012-05-01”太短
请在这里帮助我。
提前致谢
java jackson jackson-dataformat-xml jackson2 jackson-databind
grails ×4
groovy ×2
grails-3.0 ×1
grails-orm ×1
grails3.2.0 ×1
jackson ×1
jackson2 ×1
java ×1
junit ×1
log4j ×1
logging ×1
lucene ×1
mongodb ×1