小编rat*_*tek的帖子

带小数分隔符的Grails数据绑定

当我在Double form字段上使用带有小数分隔符的grail自​​动数据绑定"ex:Test t = new Test(params)"时,我遇到了问题.经过几次搜索,我发现它与浏览器Locale有关.

示例:如果我输入小数点后用点'3.45'分隔的数字则不起作用(忽略数字的小数部分).它在我的数据库中存储3.0

如果我进行相同的测试,但使用逗号'3,45'作为小数分隔符,一切正常.Grails在数据库中存储3.45.

问题是没有人用逗号分隔符输入数字.(当设置为fr_CA时,即使小键盘输入一个点'.')

我已经找到了一些解决方案,如注册自定义数字编辑器(当你有很多应用程序时有点痛苦)或者将全局localeResolver设置为en_US(最后一个不能完成工作,因为我放弃了我的应用程序的所有国际化功能).

那么,有人有一个简单的解决方案来解决这个问题吗?

使用:Grails:2.2.0浏览器:谷歌浏览器(语言环境fr_CA)

非常感谢!

grails

10
推荐指数
1
解决办法
3124
查看次数

Spring webSecurity.ignoring()不会忽略自定义过滤器

我在Spring 4 MVC + Security + Boot项目中设置了一个自定义身份验证过滤器.过滤器做得很好,现在我想禁用某些URI的安全性(比如/api/**).这是我的配置

@Configuration
@EnableWebSecurity
public class WebSecurityConfig extends WebSecurityConfigurerAdapter{
    @Override
    public void configure(WebSecurity webSecurity) throws Exception {
        webSecurity.ignoring().antMatchers("/api/**");
    }

    @Override
    protected void configure(HttpSecurity http) throws Exception {
       http.authorizeRequests()
                 .anyRequest().authenticated()
              .and()
                 .addFilterBefore(filter, BasicAuthenticationFilter.class);
    }
}
Run Code Online (Sandbox Code Playgroud)

不幸的是,当我在/ api/...下调用资源时,过滤器仍然被链接.我在我的过滤器中添加了println,并在每次调用时将其写入控制台.你知道我的配置有什么问题吗?

UPDATE

过滤代码:

@Component
public class EAccessAuthenticationFilter extends RequestHeaderAuthenticationFilter {

    @Override
    public void doFilter(ServletRequest request, ServletResponse response, FilterChain chain) throws IOException, ServletException {
        System.out.println("FILTER");
        if(SecurityContextHolder.getContext().getAuthentication() == null){
            //Do my authentication stuff
            PreAuthenticatedAuthenticationToken authentication = new PreAuthenticatedAuthenticationToken(user, credential, authorities); …
Run Code Online (Sandbox Code Playgroud)

java spring spring-mvc spring-security

8
推荐指数
3
解决办法
9609
查看次数

Marker中新的Google Maps Symbol对象使IE非常慢

我正在测试Google Maps V3 API的新Symbols对象.我已经使用相同的符号路径和颜色设置了400个标记的每个"图标"属性.

使用Firefox或Chrome查看示例页面时,所有内容都会快速加载并且运行良好.

不幸的是...... Internet Explorer中的性能非常糟糕.在加载时以及我尝试拖动或缩放地图时都不好.

这是一个简单的javascript示例,您可以使用它来测试IE

  var map;
  function initialize() {
    var mapDiv = document.getElementById('map-canvas');
    map = new google.maps.Map(mapDiv, {
      center: new google.maps.LatLng(37.4419, -122.1419),
      zoom: 13,
      mapTypeId: google.maps.MapTypeId.ROADMAP
    });

    google.maps.event.addListenerOnce(map, 'tilesloaded', addMarkers);

  }

  function addMarkers() {
    var bounds = map.getBounds();
    var southWest = bounds.getSouthWest();
    var northEast = bounds.getNorthEast();
    var lngSpan = northEast.lng() - southWest.lng();
    var latSpan = northEast.lat() - southWest.lat();
    for (var i = 0; i < 400; i++) {
      var latLng = new google.maps.LatLng(southWest.lat() + latSpan …
Run Code Online (Sandbox Code Playgroud)

javascript internet-explorer google-maps

5
推荐指数
1
解决办法
6273
查看次数