ITPub博客

首页 > 应用开发 > XML/XSL > 关键报错:ERR Client sent AUTH, but no password is set

关键报错:ERR Client sent AUTH, but no password is set

投稿 XML/XSL 作者:ecclw459 时间:2026-01-29 16:08:10 0 删除 编辑

redisson.client.RedisException: ERR Client sent AUTH, but no password is set. channel: [id: 0xb67a741f , L:/ 127.0 .0 .1 : 64404 - R: 127.0 .0 .1 / 127.0 .0 .1 : 6379 ] command: (AUTH), params: (password masked) at java.base/java.util.concurrent.CompletableFuture.encodeRelay(CompletableFuture.java: 368 ) at java.base/java.util.concurrent.CompletableFuture.completeRelay(CompletableFuture.java: 377 ) at java.base/java.util.concurrent.CompletableFuture$UniRelay.tryFire(CompletableFuture.java: 1097 ) at java.base/java.util.concurrent.CompletableFuture.postComplete(CompletableFuture.java: 510 ) at java.base/java.util.concurrent.CompletableFuture.completeExceptionally(CompletableFuture.java: 2162 ) at org.redisson.client.protocol.CommandData.tryFailure(CommandData.java: 87 )

Failed to instantiate [org.redisson.api.RedissonClient]: Factory method 'redisson' threw exception with message: java.util.concurrent.ExecutionException: org.redisson.client.RedisConnectionException: Unable to connect to Redis server: 127.0 .0 .1 / 127.0 .0 .1 : 6379     at org.springframework.beans.factory.support.SimpleInstantiationStrategy.instantiate(SimpleInstantiationStrategy.java: 178 ) at org.springframework.beans.factory.support.ConstructorResolver.instantiate(ConstructorResolver.java: 644 ) ... 131 common frames omitted    m.xfishschooL.com Caused by: org.redisson.client.RedisConnectionException: java.util.concurrent.ExecutionException: org.redisson.client.RedisConnectionException: Unable to connect to Redis server: 127.0 .0 .1 / 127.0 .0 .1 : 6379 at org.redisson.connection.MasterSlaveConnectionManager.doConnect(MasterSlaveConnectionManager.java: 228 ) at org.redisson.connection.MasterSlaveConnectionManager.connect(MasterSlaveConnectionManager.java: 188 ) at org.redisson.connection.ConnectionManager.create(ConnectionManager.java: 98 )


 public string Name    {         set => name = value;wap.xfishschooL.com        get => name;    } /* ================================================================================= */ // WPF -> 依赖属性 // 输入propdp,然后连续按两下Tab键,VS会帮我们自动生成下面的这段代码    public int MyProperty    {        get { return ( int )GetValue(MyPropertyProperty); }         set { SetValue(MyPropertyProperty, value); }    }     // Using a DependencyProperty as the backing store for MyProperty.       // This enables animation, styling, binding, etc...    public static readonly DependencyProperty MyPropertyProperty =        DependencyProperty.Register(         "MyProperty" ,        typeof( int ),        typeof(ownerclass),        new PropertyMetadata( 0 ));

 {         // 并且使用了GetValue 和 SetValue成员 读/写 依赖属性 MyPropertyProperty         // GetValue和SetValue -> 由DependencyObject类定义的         // GetValue -> 获取依赖属性值         // SetValue -> 写入依赖属性值        get { return ( int )GetValue(MyPropertyProperty); }         set { SetValue(MyPropertyProperty, value); }    }     // Using a DependencyProperty as the backing store for MyProperty.       // This enables animation, styling, binding, etc... // 翻译一下官方的这两句话:           // 使用依赖属性作为 MyProperty 的存储方式 // 再翻译一下:MyProperty 的真实存储位置是一个 DependencyProperty,而不是字段         // 从而启用动画、样式、数据绑定等功能 /* 注册int类型的依赖属性 MyProperty */ // 被声明为 DependencyProperty 类型的静态只读类型的 MyPropertyProperty 成员 // 使用 DependencyProperty 的Register方法注册    public static readonly DependencyProperty MyPropertyProperty =        DependencyProperty.Register(         "MyProperty" , // 属性名,必须与上面的包装属性名称一致        typeof( int ), // 属性类型

    // 依赖属性(读取和写入) -> 具备自动通知界面的能力    public string MyPasswordVM    {        get { return ( string )GetValue(MyPasswordVMProperty); }         set { SetValue(MyPasswordVMProperty, value); }    }     // 注册string类型的依赖属性 MyPasswordVM    public static readonly DependencyProperty MyPasswordVMProperty =        DependencyProperty.Register(        xfishschooL.com      "MyPasswordVM" ,         // 属性名,必须与上面的包装属性名称一致

/* 1.定义 */ public static readonly DependencyProperty MyPasswordVMProperty =     /* 2.注册 */     DependencyProperty.Register(         "MyPasswordVM" ,         // 属性名,必须与上面的包装属性名称一致         typeof( string ),         // 属性类型         typeof(MainWindow));    m.tj51door.com   // 所属类型 /* 3.包装 */ public string MyPasswordVM {     get { return ( string )GetValue(MyPasswordVMProperty); }     set { SetValue(MyPasswordVMProperty, value); } }

/ 我们先用下面的一长段代码理解一下API的使用,不需要太过于理解,只是让我们知道这个东西是什么即可 // 你要是不想看也不是不行,直接看下面的表格,也不会有太大的影响其实 public class PropertyMetadata{    public PropertyMetadata () ;    public PropertyMetadata (object defaultValue) ;    public PropertyMetadata (PropertyChangedCallback propertyChangedCallback) ;    public PropertyMetadata (object defaultValue, PropertyChangedCallback propertyChangedCallback) ;    public PropertyMetadata (object defaultValue,                            PropertyChangedCallback propertyChangedCallback,                            CoerceValueCallback coerceValueCallback) ;    public object DefaultValue { get; set ; }    public PropertyChangedCallback PropertyChangedCallback { get; set ; }    public CoerceValueCallback CoerceValueCallback { get; set ; }    protected bool IsSealed { get; }wap.tj51door.com    protected virtual void Merge (PropertyMetadata baseMetadata, DependencyProperty dp) ;    protected virtual void OnApply (DependencyProperty dp, Type targetType) ; } // 注释版 public class PropertyMetadata{     // ================= 构造函数 ================= // 默认构造函数 -> 无默认值和回调    public PropertyMetadata () ;     www.tj51door.com // 指定 属性的默认值 -> 当没有本地值、绑定值或样式时,依赖属性会使用这个默认值    public PropertyMetadata (object defaultValue) ;     // 指定 改变回调 -> 当属性值真正发生变化时触发,用于通知或更新 UI    public PropertyMetadata (PropertyChangedCallback propertyChangedCallback) ; // 指定 默认值和 改变回调    public PropertyMetadata (object defaultValue, PropertyChangedCallback propertyChangedCallback) ;     // 指定 默认值、属性改变回调和强制值回调   tj51door.com     // 强制回调 -> 用于在值写入之前动态调整或修正属性值    public PropertyMetadata (object defaultValue, m.zmdcyy.com                            PropertyChangedCallback propertyChangedCallback,                            CoerceValueCallback coerceValueCallback) ;     // ================= 属性 =================     // 属性的默认值 -> 当没有本地值、绑定值或样式提供值时使用    public object DefaultValue { get; set ; }     // 改变回调 -> 属性值真正变更后触发     // 用于执行副作用,如刷新 UI 或同步其他属性    public PropertyChangedCallback PropertyChangedCallback { get; set ; }     // 强制回调 -> 在值写入属性系统之前调用     // 可以根据对象状态调整值,确保属性值的一致性或约束    public CoerceValueCallback CoerceValueCallback { get; set ; }     // 元数据是否已经被注册到 DependencyProperty 上     // 一旦注册,元数据不可修改,保证属性系统稳定  wap.zmdcyy.com    protected bool IsSealed { get; }     // ================= 保护方法 =================     // 当依赖属性继承元数据(子类依赖属性覆盖父类依赖属性)时调用     // 用于合并父类元数据和当前元数据    protected virtual void Merge (PropertyMetadata baseMetadata, DependencyProperty dp) ;     // 当元数据应用到某个依赖属性上时调用     // 框架内部使用,一般开发者不需要调用    protected virtual void OnApply (DependencyProperty dp, Type targetType) ;

amespace Test   {     /// <summary>     /// MainWindow.xaml 的交互逻辑     /// </summary>    public partial class MainWindow : Window    {        public MainWindow ()        {            InitializeComponent();     zmdcyy.com        // 测试验证回调 -> 会抛异常,没事干记得注释掉             // Test = "";             // 测试强制回调 -> 会,没事干记得注释掉             //Test = "123456789012345678901234567890";             // 测试改变回调 -> 你敢变我就敢()            Test = "11" ;            Test = "22" ;        }        public string Test        {            get { return ( string )GetValue(TestProperty); }    m.gzxinding.cn         set { SetValue(TestProperty, value); }        }        public static readonly DependencyProperty TestProperty =            DependencyProperty.Register(                 "Test" ,                         // 属性名,必须与上面的 CLR 包装属性一致                typeof( string ),                 // 属性类型                typeof(MainWindow),             // 所属类型                new PropertyMetadata(                     "1" ,                           // 默认值                    OnTestChanged,       // 改变回调                    CoerceTest           // 强制回调                ),                ValidateTest       wap.gzxinding.cn       // 验证回调            );         // ==================== 三种回调 ====================         // 1️.验证回调 -> 在值进入属性系统之前进行合法性检查        private static bool ValidateTest (object value)        {             // 禁止写入空值             string s = value as string ;             return ! string .IsNullOrEmpty(s);        }         // 2️.改变回调 -> 属性值真正生效后触发,用于通知或执行副作用        private static void OnTestChanged (DependencyObject d, DependencyPropertyChangedEventArgs e)        {            MainWindow owner = d as MainWindow;             string oldValue = ( string )e.OldValue;             string newValue = ( string )e.NewValue; gzxinding.cn            Console.WriteLine($ "Test 变化:{oldValue} -> {newValue}" );        }         // 3️.强制回调 -> 在值写入属性系统前对值进行调整        private static object CoerceTest (DependencyObject d, object baseValue)        {             string s = baseValue as string ;             if (s != null && s.Length > 20 )            {



来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/70048957/viewspace-3109416/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2026-01-07

  • 博文量
    108
  • 访问量
    102104