首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
社区首页 >问答首页 >pgjdbc-ng格式错误区域:

pgjdbc-ng格式错误区域:
EN

Stack Overflow用户
提问于 2019-02-25 09:55:10
回答 1查看 117关注 0票数 0

目前,我正在尝试制作一个模块,它将通过Postgres上的触发器来监听任何更改。我使用的是pgjdbc-ng v0.8.2,从maven repo central下载JAR并将其添加为项目参考。

下面是我使用的代码:

代码语言:javascript
代码运行次数:0
运行
AI代码解释
复制
public class ListenNotify
{
// Create the queue that will be shared by the producer and consumer
private BlockingQueue queue = new ArrayBlockingQueue(10);

    // Database connection
    PGConnection connection;

    public ListenNotify()
    {
        // Get database info from environment variables
        /*
        String DBHost = System.getenv("DBHost"); 
        String DBName = System.getenv("DBName");
        String DBUserName = System.getenv("DBUserName");
        String DBPassword = System.getenv("DBPassword");
        */
        String DBHost = "127.0.0.1"; 
        String DBName = "dbname";
        String DBUserName = "postgres";
        String DBPassword = "postgres";
        // Create the listener callback
        PGNotificationListener listener = new PGNotificationListener()
        {
            @Override
            public void notification(int processId, String channelName, String payload)
            {
            // Add event and payload to the queue
            queue.add("/channels/" + channelName + " " + payload);
            }
        };

        try
        {
            // Create a data source for logging into the db
            PGDataSource dataSource = new PGDataSource();
            dataSource.setHost(DBHost);
            dataSource.setPort(5432);
            dataSource.setDatabaseName(DBName);
            dataSource.setUser(DBUserName);
            dataSource.setPassword(DBPassword);

            // Log into the db
            connection = (PGConnection) dataSource.getConnection();

            // add the callback listener created earlier to the connection
            connection.addNotificationListener(listener);

            // Tell Postgres to send NOTIFY q_event to our connection and listener
            Statement statement = connection.createStatement();
            statement.execute("LISTEN q_event");
            statement.close();
        }
        catch (Exception e)
        {
            e.printStackTrace();
        }
    }

    /**
    * @return shared queue
    */
    public BlockingQueue getQueue()
    {
        return queue;
    }

    /**
    *
    * main entry point
    *
    * @param args
    */
    public static void main(String[] args)
    {
    // Create a new listener
        ListenNotify ln = new ListenNotify();

        // Get the shared queue
        BlockingQueue queue = ln.getQueue();

        // Loop forever pulling messages off the queue
        while (true)
        {
            try
            {
                // queue blocks until something is placed on it
                String msg = queue.take().toString();

                // Do something with the event
                System.out.println(msg);
            }
            catch (InterruptedException e)
            {
                e.printStackTrace();
            }
        }
    }
}

在运行时,我得到了异常:

格式不正确的区域:索引为0的印度尼西亚

我读过官方的git,说它应该在某个版本号内修复。

我如何应用这些修复?

谢谢

EN

回答 1

Stack Overflow用户

发布于 2019-04-12 09:05:34

我知道现在有点晚了;)

我也有同样的问题,而且我也读到问题已经解决了。但情况似乎并非如此。无论如何,问题是在创建postgres数据库时,LC_COLLATE可能被设置为Indonesian_Indonesia.1252。当尝试建立连接时,将该值与java语言环境进行比较。在Java Locales类中,该值可能使用您的语言,因此无法找到该条目。但是,为了解决这个问题,您可以将Java语言环境的缺省值设置为English。这当然不是解决问题的最好方法,但它是有效的。为了安全起见,我会在连接建立后放回

您可以按如下方式设置默认值:

Locale.setDefault(Locale.ENGLISH)

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/54863521

复制
相关文章
时间区域类与日期格式类
Locale.setDefault(Locale.TAIWAN);这个方法是设置全局区域,设置了某一个国家后,全部的打印都是以这个国家/区域的文字显示。例如设置为美国:
端碗吹水
2020/09/23
8280
时间区域类与日期格式类
String转换jsonobject格式错误
String转换jsonobject格式错误
全栈程序员站长
2022/09/22
1.1K0
String转换jsonobject格式错误
python缩进格式错误的是_python 缩进错误,
要求严2113格的代码缩进是python语法的一大特色,就像C语言5261家族(C、C++、Java、C#等等)中的花括4102号一1653样重要,在大多数场合还有必要。在很多代码规范里面也都有要求代码书写按照一定的规则进行换行和代码缩进,但是这些要求只是纯粹是方便人(程序员)来阅读、使用或修改的,对于编译器或者解释器而言,完全是视而不见的。但是对Python解释器而言,每行代码前的缩进都有语法和逻辑上的意义。Python的这个特性,也经常在Python使用者和非Python使用者中引起争论。
全栈程序员站长
2022/07/28
2.2K0
PHPCMS父栏目分页格式错误
HPCMS当父栏目和子栏目都为静态时,当给子栏目增加一篇文章时,会自动更新相关栏目,此时子栏目的分页url规则将会覆盖父栏目的url规则,也就是说父栏目的url分页规则失效。 以上这种情况在动态页面不受影响,手动生成栏目页也不会受影响。 目前没有完美的解决方案,可能PHPCMS官方开发人员的思路是栏目分页的格式无论是父栏目和子栏目理当相同才对。 暂时能用到的解决方案:取消自动生成相关栏目的功能 在 /phpcms/modules/content/classes/html.class.php 末尾可以找到,注释掉自动生成父栏目的相关代码即可。
李维亮
2021/07/09
2.7K0
【错误记录】Android 分区存储 错误 ( 文件格式不匹配 )
在 Android 11 之后 , 不能使用 File 进行文件操作 , 需要使用 MediaStore 进行文件操作 ,
韩曙亮
2023/03/29
1.9K0
【错误记录】Android 分区存储 错误 ( 文件格式不匹配 )
iOS 时间格式错误导致的坑
我们的项目中有个功能是根据昨天到当前时间去查找记录,可是就在圣诞节过后,出现了问题,查找记录查找不到了?最后发现时间区间是:2019-12-26 3:00:00-----2019-12-27 23:15:45,怎么回事呢?只有年份不对,年份应该是2018年啊!代码没有问题啊!找了好久,最后发现时间格式设置不对! 好大的坑!
honey缘木鱼
2019/02/21
3.3K0
文件格式引起的脚本执行错误
当我们使用 Windows 桌面下的编辑器编写一个 Shell 文件时,很容易将文件使用的换行符保存为 dos 格式。如果将文件上传到 Linux 服务器执行时,可能会遇到下面的错误。这是因为
大江小浪
2023/02/16
1.2K0
文件格式引起的脚本执行错误
关于函数模板描述错误的是(链接格式错误怎么解决)
函数是通用基本函数,故没有放到任何类中,为全局的。声明与实现分别放到.h和.cpp中,
全栈程序员站长
2022/07/26
1.3K0
详解CAN总线:CAN总线报文格式—错误帧
CAN总线上传输的信息称为报文,当总线空闲时任何连接的单元都可以开始发送新的报文。
不脱发的程序猿
2022/10/04
3.3K0
详解CAN总线:CAN总线报文格式—错误帧
Rest API: Json参数格式错误时显示Json原文
一开始想寻找其他方式,当抛出异常的时候,就从HttpServletRequest读取body内容。但是做不到,因为在做Json读取的时候,InputStream已经被读取了,无法再次获取到body内容。所以只能通过自定义MessageConverter的方式。
十毛
2019/03/27
1.9K0
JavaScript案例:密码框格式提示错误信息
用户如果离开密码框。里面输入个数不是6~16,则提示错误信息,否则提示输入信息正确。
岳泽以
2022/10/26
7600
JavaScript案例:密码框格式提示错误信息
MHC区域
MHC,就是主要组织相容性复合体 (major histocompatibility complex),是存在于大部分脊椎动物基因组中的一个基因家族,与免疫系统密切相关,其中人类的MHC糖蛋白,又称为人类白血球抗原(英语:human leukocyte antigen,简称HLA)。MHC区域位于位于6号染色体上(6p21.31),hg38基因组中29Mb 到 33Mb的位置。这个地方具有高基因密度、高多态性、高度的连锁不平衡等遗传特性。目前发现至少上百种疾病与此区域相关,如自闭症、贫血症、风湿性关节炎等,可作为高度多态的遗传标记。
生信编程日常
2020/06/02
1.7K0
MHC区域
DMZ 区域
      下面对DMZ区域进行简要介绍:DMZ是网络的一个区域,介于外网与内网之间的一个特殊区域,也称隔离区。它不同于传统的防火墙设置,DMZ防火墙方案为要保护的内部网络增加了一道安全防线,通常认为是非常安全的。它提供了一个区域放置公共服务器,能有效地避免一些互联应用需要公开,而与内部安全策略相矛盾的情况发生。在DMZ区域中通常包括堡垒主机、Modem池,以及所有的公共服务器,真正的后台数据需要放在内部网络中。
西湖醋鱼
2020/12/30
7.5K0
DMZ 区域
【实例】调整区域大小&动态隐藏区域
实例参照地址:https://jsfiddle.net/381510688/fb6Lz9rm/
奋飛
2019/08/14
1.7K0
解决快递100同城配送接口请求格式错误的方法
1.商家寄件接口无接口费用,充值费用为运费,在无充值情况下无法调用接口,最低充值为100元;
快递100API
2021/08/16
1K0
JVM内存区域
Native方法常用于两种情况: (1)在方法中调用一些不是由java语言写的代码。 (2)在方法中用java语言直接操纵计算机硬件
楠楠
2020/08/12
1.1K0
JVM内存区域
JVM内存区域
JVM虚拟机,也就是虚拟的计算机,它有自己虚拟的CPU、虚拟的内存等等,当然还有大名鼎鼎的垃圾回收器。第一篇我们来讲解一下JVM的虚拟内存。
用户4439777
2020/08/01
9530
微信公众号支付提示mch_id参数格式错误
今天在做网站微信支付的时候,一直提示“微信公众号支付提示mch_id参数格式错误” !
追逐时光者
2022/02/15
2.1K0
点击加载更多

相似问题

DATEADD使用错误的区域格式

15

SharePoint 2010 DateTime区域性格式错误

11

AmazonS3Exception:授权头格式错误;区域错误

21

所有区域格式的NSDate格式

10

NSDate区域格式问题

11
添加站长 进交流群

领取专属 10元无门槛券

AI混元助手 在线答疑

扫码加入开发者社群
关注 腾讯云开发者公众号

洞察 腾讯核心技术

剖析业界实践案例

扫码关注腾讯云开发者公众号
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档
查看详情【社区公告】 技术创作特训营有奖征文