小编Bry*_*ler的帖子

带有身份验证的NSURLSession的简单示例

我编写了一个REST服务来提供一些数据.它受密码保护.

我正在尝试编写一个后台进程,它将获取数据并将其填充到我在应用程序中的sqlLite数据库中.

我最初没有使用身份验证执行此操作

- (void) callWebService {
    dispatch_sync(kBgQueue, ^{
        NSData* data = [NSData dataWithContentsOfURL:
                        scoularDirectoryURL];
        [self performSelectorOnMainThread:@selector(fetchedData:) withObject:data waitUntilDone:YES];
    });
}
Run Code Online (Sandbox Code Playgroud)

这工作正常,但我不认为我可以添加身份验证.如果可以,我会用它.

我正在寻找的是使用用户/密码认证的NSURLSession的一个很好的简单解释.

nsurlsession

2
推荐指数
1
解决办法
1万
查看次数

使用指向指针和NSError的指针获取警告

我不明白以下警告:

不兼容的指针类型将'NSError*__ strong*'发送到'NSString*__ autoreleasing*'类型的参数

抛出这个的方法是

BSSPhoneNumberFormatter *formatter = [[BSSPhoneNumberFormatter alloc] init];
NSString *tmp = self.dtlPhnNbr.text;
id objectValue;
NSError *error;
[formatter getObjectValue:&objectValue forString:tmp errorDescription:&error];
Run Code Online (Sandbox Code Playgroud)

最后一行有警告.

BSSPhoneNumberFormatter的h文件是

#import <Foundation/Foundation.h>

@interface BSSPhoneNumberFormatter : NSFormatter

@end
Run Code Online (Sandbox Code Playgroud)

而且方法是

- (BOOL)getObjectValue:(id *)anObject forString:(NSString *)string errorDescription:(NSString **)error {
    *anObject = (id)[self stripNonDigits:string];
    return YES;
}
Run Code Online (Sandbox Code Playgroud)

我知道(NSString**)错误是指向指针的指针.一个不同的帖子说要在调用的方法和调用方法中用(NSString*)替换(NSString**),但如果我这样做,我会得到很多错误.

到底是怎么回事?

objective-c

2
推荐指数
1
解决办法
659
查看次数

Xpages源格式

我想知道Xpages的源格式化是否比编辑器内置的更高级.特别是我想从代码中删除空格.

还有什么吗?

xpages

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

Xpages无法控制表格行表格中的间距

我无法在表单表格中控制表单布局中的间距.我想在每一行之间留一些空间,所以事情并没有那么紧张.开箱即用它看起来像这样:

在此输入图像描述

我已经尝试为每一行添加填充和边距,我已经在CSS库中添加了一些代码:

.lotusForm tr.lotusFormFieldRow td, .lotusForm td.lotusFormFieldRow {
    padding-bottom: 50px;
}
Run Code Online (Sandbox Code Playgroud)

我究竟做错了什么?

<?xml version="1.0" encoding="UTF-8"?>
<xp:view xmlns:xp="http://www.ibm.com/xsp/core"
    xmlns:xe="http://www.ibm.com/xsp/coreex">
    <xp:this.data>
        <xp:dominoDocument var="document1" formName="PCInventory"></xp:dominoDocument>
    </xp:this.data>
    <xe:formTable id="frInventory" disableErrorSummary="true"
        disableRowError="true" formTitle="Inventory" labelWidth="100px"
        labelPosition="left">
        <xp:this.facets></xp:this.facets>
        <xe:formRow id="formRow3" labelPosition="inherit"></xe:formRow>
        <xe:formRow id="formRow2" labelPosition="inherit"
            label="Serial Number" style="padding-bottom:20.0px">
            <xp:inputText value="#{document1.computerName}"
                id="computerName1" style="width:150px">
            </xp:inputText>
            <xp:message id="message2" for="computerName1" />
        </xe:formRow>
        <xe:formRow id="formRow8" labelPosition="inherit"
            label="Model">
            <xp:inputText value="#{document1.computerName}"
                id="inputText6" style="width:150px">
            </xp:inputText>
            <xp:message id="message1" for="computerName1" />
        </xe:formRow>
        <xe:formRow id="formRow1" labelPosition="inherit"
            label="Office /Location">
            <xp:inputText value="#{document1.computerName}"
                id="inputText1" style="width:150px">
            </xp:inputText>
        </xe:formRow>
        <xe:formRow id="formRow5" labelPosition="inherit"
            label="Check In …
Run Code Online (Sandbox Code Playgroud)

xpages xpages-extlib

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

Xpages:在java中使用日期

我在Xpages中有一个由ObjectBean管理的文档.将我在Xpage中的字段与EL绑定,因此字段看起来像......

<xp:inputText id="inputText2" xp:key="field"
    value="#{ObjectBean.serialNumber}" />
</xp:this.facets>
Run Code Online (Sandbox Code Playgroud)

在我的bean中,我有getter,setter,加载,验证等等,它工作正常.

现在我需要添加一个日期字段.在Xpage我有

                        <xp:inputText xp:key="field"
                            id="checkInDate" value="#{ObjectBean.checkInDate}">
                            <xp:this.converter>
                                <xp:convertDateTime
                                    type="date">
                                </xp:convertDateTime>
                            </xp:this.converter>
                            <xp:dateTimeHelper>
                            </xp:dateTimeHelper>
                        </xp:inputText>
Run Code Online (Sandbox Code Playgroud)

我意识到添加Date或DateTime字段需要一些特殊代码,但无法弄清楚要做什么.

我的吸气剂和制定者是:

public Date getCheckInDate() {      
        if (checkInDate == null) {
            checkInDate = new Date();
        }
        return checkInDate;
}

public void setCheckInDate(Date checkInDate) {
    this.checkInDate = checkInDate;
}
Run Code Online (Sandbox Code Playgroud)

在我的保存中,我正在尝试这个

日期tmpDate = session.createDateTime(checkInDate).toJavaDate(); doc.replaceItemValue( "checkInDate",checkInDate);

还有这个

doc.replaceItemValue("checkInDate",session.createDateTime(checkInDate));
Run Code Online (Sandbox Code Playgroud)

但是我得到一个错误,或者在第二种情况下我没有收到错误但没有保存任何内容(文档未保存).

java xpages

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

Xpages:如何从java中的一个组中获取所有成员(使用ODA)并获取其通用名称

我认为我非常聪明地编写这种方法来加载一个组的成员.但返回的值不是通用名称格式:

在此输入图像描述

如何轻松地以通用名称获取这些值或轻松将它们转换为通用名称?

private void loadNetworkTeam() {

        try {
            Session session = Factory.getSession();
            Database tmpDB = session.getCurrentDatabase();
            Database tmpDB2 = session.getDatabase(tmpDB.getServer(), "names.nsf");
            View grpView = tmpDB2.getView("($VIMGroups)");

            Vector<Object> nTeam = new Vector<Object>();
            nTeam.addElement("NetWorkTeam");    
            Document grpDoc = grpView.getFirstDocumentByKey("Network Team");
            Item itm = grpDoc.getFirstItem("members");          
            networkTeam.addAll(itm.getValues());

        } catch (Exception e) {
            XspOpenLogUtil.logError(e);
        }
    }
Run Code Online (Sandbox Code Playgroud)

xpages

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

Xpages自定义控件:将compositeData值放在SSJS函数中

我发布了用于解决此问题的代码.感谢Per和Eric McCormick以及Paul Withers.

<xp:scriptBlock id="scriptBlock2">
        <xp:this.value><![CDATA[$(document).ready(
function() { 
x$("#{javascript:return getComponent(compositeData.fieldName).getClientId(facesContext);}").select2({
                                placeholder : "Choose an employee",
                                allowClear: true,
                                minimumResultsForSearch : 3
                            })  
}
);                      
]]>
        </xp:this.value>
    </xp:scriptBlock>
Run Code Online (Sandbox Code Playgroud)

之前的问题的答案是非常有用的.我正在制作一个Select2自定义控件,需要在SSJS函数中使用动态生成的ID

我通过给它fieldName动态创建自定义控件中字段的id,如下所示:

id="${javascript:compositeData.fieldName}"
Run Code Online (Sandbox Code Playgroud)

在我的CC的其他部分,我使用该计算来访问id号,例如:

    <xp:message 
            id="message1"
            for="#{javascript:compositeData.fieldName}"
            styleClass="help-block">
        </xp:message>
Run Code Online (Sandbox Code Playgroud)

但是在构建我的Select2 CC时,我需要在脚本中添加一些SSJS,如下所示:

<xp:scriptBlock id="scriptBlock2">
        <xp:this.value><![CDATA[
            $(document).ready(
                function() {
                x$("#{id:[compositeData.fieldName]}").select2({
                placeholder: "Select An Employee",
                allowClear: true
                });
                }
                );
]]></xp:this.value>
    </xp:scriptBlock>
Run Code Online (Sandbox Code Playgroud)

但这不起作用.我无法弄清楚如何动态生成ID.

x$("#{id:[compositeData.fieldName]}")


<?xml version="1.0" encoding="UTF-8"?>
<xp:view
    xmlns:xp="http://www.ibm.com/xsp/core"
    id="view1">



    <xp:scriptBlock id="scriptBlock2">
        <xp:this.value><![CDATA[
            $(document).ready(
                function() {
                x$("#{id:[compositeData.fieldName]}").select2({
                placeholder: "Select An Employee",
                allowClear: true
                });
                } …
Run Code Online (Sandbox Code Playgroud)

xpages

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

我可以创建分类视图,其中类别也是文档

我有一个有4个字段的表单

KEY LEVEL1 LEVEL2 LEVEL3

关键是文档类型,我们的目的是Level1,Level2,Level3.

如果文档中的键是LEVEL1,则LEVEL1中有一些值,例如"App 1".

如果文档中的键是LEVEL2,则LEVEL1 中的值必须是Level1文档中的值之一.然后LEVEL2就像TITLE1.

最后,如果存在密钥为LEVEL3的文档,那么它必须在LEVEL1和LEVEL2中具有有效值,然后在LEVEL3中具有类似"Page3"的内容.

所以这是一个明显的树结构.

我正在尝试构建一个分类视图(在Xpages中,但我认为我必须从LN中的分类视图开始),如下所示:

如果用户可以打开或关闭曲折以折叠类别,或者单击该条目以打开该文档.因此,如果用户单击TITL1,他们将转到TITLE1文档,如果他们点击TITLE2,他们将转到该文档,依此类推.

对于我的生活,我无法弄清楚这一点.也许这是不可能的.

任何帮助将不胜感激.

布赖恩

感谢所有的建议.

我试着用建议做一个笔记视图,但它只是没有用.我认为最好不要在经典笔记开发中思考,而是用Xpages术语思考.看起来像我正在寻找的是嵌套重复.

这就是我所做的.结果如下:

在此输入图像描述

我只希望用户添加一个条目,这就是为什么我在最后一个条目上有一个"+".我将允许用户最终删除条目并移动它们.

欢迎任何有关UI改进的建议.

lotus-notes lotus-formula xpages

0
推荐指数
1
解决办法
111
查看次数

相当于数据库脚本初始化的Xpages

我在XPiNC中运行Xpages.

我通常的Xpages应用程序模式是将xpHome.xsp页面设置为打开的第一个页面.在这个I页面中,我设置了应用程序级别的任何范围变量,然后前往"真正的"第一页.

现在我遇到了一个问题.我的当前数据库将在状态更改时发送电子邮件,这将包括指向文档的文档链接,该文档指向要打开的正确X页.但是,由于用户没有浏览主页,因此我的applicationScope vars正在设置中.

我想我可以通过在initApp函数中设置一个信号量来解决这个问题 - 它最后要做的是在applicationScope.semaphore字段中放置一个"Y".因此,当我打开我的Xpage时,它首先要检查的是,如果它是null,那么我调用initApp函数.

由于某种原因,这是行不通的.但即便如此,我仍希望找到相当于旧数据库脚本"Initialize"的事件.我第一次打开数据库时可以调用的东西.

其他人如何处理这个问题?

xpages xpages-ssjs xpages-extlib

0
推荐指数
1
解决办法
212
查看次数